在宿主机容器外创建文件夹
Create folder outside the container in the host machine
我想更改配置服务器从 git 下载文件的文件夹。
当我在 windows 本地执行时,它工作得很好,我可以找到创建的文件夹。
但是当我将配置服务器部署到 docker 时,我在我选择的路径中找不到文件夹
这是我的属性配置
cloud:
config:
server:
git:
uri: "https://bitbucket.org/xxx/remote-config.git"
username: "xxx"
password: "xxx"
basedir: "${CONFIG_LOCAL_REPO_DIR}"
default-label: "master"
clone-on-start: true
force-pull: true
这是我的 docker-compose 文件
version: '3.8'
services:
config-server:
image: "config-server:1.0"
build: "./config-server"
container_name: "config_server"
restart: "always"
networks:
- "network"
volumes:
- "myvolume"
depends_on:
- "rabbitmq"
environment:
CONFIG_LOCAL_REPO_DIR: "myvolume:/home/debian/backend-app/local-repo"
volumes:
myvolume:
networks:
network:
如何解决这个问题以在我的机器上创建我选择的文件夹?
如果您希望在主机系统上轻松访问数据,即与撰写文件位于同一目录中,请使用 bind mount.
services:
config-server:
volumes:
- ./local-repo:/myrepo
environment:
CONFIG_LOCAL_REPO_DIR: /myrepo
注意,这不是引用 YAML 文件中 volumes:
键的卷,而是主机系统上的路径。在这种情况下,相对于撰写文件。
我想更改配置服务器从 git 下载文件的文件夹。
当我在 windows 本地执行时,它工作得很好,我可以找到创建的文件夹。
但是当我将配置服务器部署到 docker 时,我在我选择的路径中找不到文件夹
这是我的属性配置
cloud:
config:
server:
git:
uri: "https://bitbucket.org/xxx/remote-config.git"
username: "xxx"
password: "xxx"
basedir: "${CONFIG_LOCAL_REPO_DIR}"
default-label: "master"
clone-on-start: true
force-pull: true
这是我的 docker-compose 文件
version: '3.8'
services:
config-server:
image: "config-server:1.0"
build: "./config-server"
container_name: "config_server"
restart: "always"
networks:
- "network"
volumes:
- "myvolume"
depends_on:
- "rabbitmq"
environment:
CONFIG_LOCAL_REPO_DIR: "myvolume:/home/debian/backend-app/local-repo"
volumes:
myvolume:
networks:
network:
如何解决这个问题以在我的机器上创建我选择的文件夹?
如果您希望在主机系统上轻松访问数据,即与撰写文件位于同一目录中,请使用 bind mount.
services:
config-server:
volumes:
- ./local-repo:/myrepo
environment:
CONFIG_LOCAL_REPO_DIR: /myrepo
注意,这不是引用 YAML 文件中 volumes:
键的卷,而是主机系统上的路径。在这种情况下,相对于撰写文件。