docker - 如何将本地目录映射到 Docker 容器的目录?
问题描述
我正在尝试将位于本地App_Data和Themes中的多个配置文件映射到 Docker 容器内的相同文件夹。目标是确保容器使用与我的开发机器相同的配置,并允许我在不重建容器的情况下修改和测试主题。
我正在修改现有脚本,但我收到以下错误消息,但没有指出有问题的行:
ERROR: In file './docker-compose.yml', volume must be a mapping, not an array.
The terminal process "/bin/zsh '-c', 'docker-compose -f "docker-compose.yml" up -d --build'" terminated with exit code: 1.
现有脚本经历了一个漫长的构建过程,这涉及一个漫长的构建过程,但我希望这个脚本能够在预构建的容器上工作。我可以简单地删除构建步骤吗?
version: "3.4"
services:
nopcommerce_web:
image: nopcommerce:latest
ports:
- "80:80"
depends_on:
- nopcommerce_database
volumes:
- /src/Presentation/Nop.Web/App_Data
nopcommerce_database:
image: "mcr.microsoft.com/mssql/server:2019-latest"
container_name: nopcommerce_mssql_server
environment:
SA_PASSWORD: "nopCommerce_db_password"
ACCEPT_EULA: "Y"
MSSQL_PID: "Express"
最后,有没有配置Docker的交互工具?
解决方案
阅读https://docs.docker.com/compose/compose-file/compose-file-v3/#volumes 你会想要这样的:
services:
nopcommerce_web:
image: nopcommerce:latest
ports:
- "80:80"
depends_on:
- nopcommerce_database
volumes:
- /src/Presentation/Nop.Web/App_Data:/src/Presentation/Nop.Web/App_Data
假设您想以相同的方式安装主机和 docker 容器路径。
推荐阅读
- powershell - 批量隐藏 Invoke-WebRequest
- arrays - 将 []byte 数组转换为 uintptr
- significance - 两组之间变化的显着性检验?
- python - 拟合模型时张量输入形状的问题
- javascript - Switch 语句依赖于 React-Router Route
- java - LRU 缓存:linkedhashmap 和迭代器实现不起作用
- flutter - 重新加载 AdMob 横幅广告是否比只展示一次更有利可图?
- powershell - 如何在 mcr.microsoft.com/powershell 映像之外的 docker 容器中安装 powershell 模块?
- c++ - Qt C++:不同文件中相同命名空间的多个Q_NAMESPACE
- javascript - 相当于 php 的 $var=$_POST["var"] 在javascript中?