这是我的Dockerfile:
FROM php:5.5-apache COPY sites-enabled.tgz /root/sites-enabled.tgz RUN cd /etc/apache2/sites-enabled && \ tar xvf /root/sites-enabled.tgz
我有一些需要configuration的网站,我想最简单的方法来configuration它们只是复制站点的configuration文件到适当的目录。 不幸的是我无法做到这一点。
我做docker build -t mywebsite . 然后docker run -d mywebsite 。 这两个命令似乎运行得很好。 最后一个给我一个hex编码的string。 但是,当我做docker ps我没有看到任何机器运行。
通常,启用网站的文件是符合链接到站点的可用文件。 idk,如果在每种情况下都是这样,但是如果是这样的话,似乎可能需要复制站点 – 可用站点。 例如。
FROM php:5.5-apache COPY sites-available.tgz /root/sites-available.tgz COPY sites-enabled.tgz /root/sites-enabled.tgz RUN cd /etc/apache2/sites-available && \ tar xvf /root/sites-available.tgz RUN cd /etc/apache2/sites-enabled && \ tar xvf /root/sites-enabled.tgz
不幸的是,这也不起作用。 使用sites-available.tgz,但不是sites-enabled.tgz。
有任何想法吗?
容器按你所说的做,把文件拷贝到容器中,然后进入目录,最后解压文件,就是这样。 你没有声明一个CMD命令来初始化apache,或者做任何事情,所以你的容器不会熬夜,除非你这样做
尝试把这个放在dockerfile的末尾CMD /usr/sbin/apache2ctl -D FOREGROUND
让我知道事情的后续