首页 > 解决方案 > 如何修复 Dockerfile CMD 错误?当我试图在 ubuntu 映像上创建一个 apache 服务器时

问题描述

这是我的 Docker 文件

FROM ubuntu 
RUN apt-get update 
RUN apt-get install –y apache2 
RUN apt-get install –y apache2-utils 
RUN apt-get clean 
EXPOSE 80 CMD [“apache2ctl”, “-D”, “FOREGROUND”]

这是我得到的错误

Step 6/6 : EXPOSE 80 CMD ["apache2ct1","-D","FOREGROUND"]
Invalid containerPort: CMD

标签: docker

解决方案


EXPOSE本身不提供CMDCMD是 Docker 文件语法中的一个单独参数。话虽如此,您的 Dockerfile 应该是这样的:

FROM ubuntu 
RUN apt-get update 
RUN apt-get install –y apache2 
RUN apt-get install –y apache2-utils 
RUN apt-get clean 
EXPOSE 80 
CMD [“apache2ctl”, “-D”, “FOREGROUND”]

推荐阅读