[记录]Docker下php镜像CMD异常记录及其解决 | 祭夜の咖啡馆
  • 公告

[记录]Docker下php镜像CMD异常记录及其解决

Wordpress 祭夜 10个月前 (12-14) 656次浏览 已收录 0个评论 扫描二维码
文章目录[隐藏]

前提情况

一个php容器、挂载站点文件至宿主

由于权限问题,可能需要运行这个命令:
 chown -R www-data:www-data /var/www/html

处理

你可能回想到:

CMD chown -R www-data:www-data /var/www/html

但是,你会发现,容器一运行就关闭;
日志是空的。。。
在一番测试后,我得到如下结论:
在没有CMD语句的时候,容器启动时会执行一个默认命令,并这个命令不会立即结束;
而加上CMD语句,容器的默认命令被置空。
(你可以试试tail -f ***,容器就会正常启动;但通过命令查询,发现apache2并没有启动)

查找官方示例:

https://github.com/docker-library/php/blob/3dc9a6988d478fae0f0b8b871d10e611b50e3d0c/7.2/buster/apache/Dockerfile
…….
COPY apache2-foreground /usr/local/bin/
WORKDIR /var/www/html

EXPOSE 80
CMD [“apache2-foreground”]

猜测默认命令是:apache2-foreground
更改CMD:CMD chown -R www-data:www-data /var/www/html & apache2-foreground
构建,运行,正常~


祭夜の咖啡馆 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:[记录]Docker下php镜像CMD异常记录及其解决
喜欢 (2)
[1690127128@qq.com]
分享 (0)
发表我的评论
取消评论
OwO表情
贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址