我已经使用以下命令运行图像 eboraas/apache-php
:
docker run --name eboraas -d -p 80:80 -v /my/project/dir/:/var/www/html \
-v /my/config:/etc/apache2 eboraas/apache-php
当我测试这个时,我得到服务器未找到。当我离开第二个 -v
时,它起作用了。但是我怎样才能改变我的 apache2 配置文件的目的地呢?无需再写它们。例如,我想要 /my/config
中的所有 Docker apache 配置文件。
最佳答案
第一个选项 是基于原始图像 eboraas/apache-php 创建您自己的图像(您应该创建自己的 Dockerfile)并在您的 Dockerfile 中使用 COPY。
FROM eboraas/apache-php
COPY /my/config /etc/apache2
工作原理:当您更改本地 Apache 配置文件时,您应该在此之后重建镜像并重新启动容器以应用更改。
第二个选项 就是使用 docker cp
并在每次更改本地 apache 配置文件后运行它:
docker cp /my/config eboraas:/etc/apache2/
如果你在容器内更改配置文件,你也可以复制它:
docker cp eboraas:/etc/apache2/ /my/config
更多信息 https://docs.docker.com/engine/reference/commandline/cp/ .
顺便说一句。我会推荐你使用 docker-compose 因为这个命令很长而且使用起来不舒服(https://docs.docker.com/compose/)。
关于linux - Debian Docker 配置文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41778818/