【发布时间】:2019-05-05 05:35:38
【问题描述】:
我必须将我的应用程序的每个实例作为单独的 Docker 服务启动。基本映像相同,但每个实例的配置文件不同。现在,问题是我的应用程序对配置文件进行了一些更改。而且我希望配置更改保持不变,以便当我的应用程序重新启动(作为 docker 服务)时,它使用更新的配置。
我可以使用docker config 将配置文件用作挂载点。但问题是无论我给出什么模式(rwx),我都无法从容器内部更新配置文件。挂载的配置始终是只读文件系统。
1。如何从 docker 容器中更改配置文件?
2。如何让更新后的配置文件在容器外持久存在,以便在服务重启时使用更新后的配置?
我做了以下操作来将配置文件与图像/容器分离:
docker config create my-config config.txt
docker service create \
--name redis \
--config src=my-config,target=/config.txt,mode=0660 \
redis:alpine
docker container exec -ti <containerId> /bin/sh
配置文件安装在/config.txt,但我无法编辑它。
【问题讨论】:
标签: docker docker-compose dockerfile docker-swarm