在Docker中运行一个简单的Web服务器?

我正在尝试构建一个提供静态html的简单docker容器.我有以下Dockerfile:

FROM    ubuntu

# Install python3
RUN     apt-get update
RUN     apt-get install -y python3

# Copy html
ADD static/ /src
RUN cd /src

# Run http server on port 8080
EXPOSE  8080
CMD ["python3","-m http.server 8080"

但是,当我构建运行它时,我收到以下错误

/usr/bin/python3: No module named  http

我通过交互式shell尝试了相同的步骤,它们工作正常,但是一旦我使用Dockerfile就失败了.

我认为您的CMD语法错误.我刚试过,它工作正常:

FROM    ubuntu

# Install python3
RUN     apt-get update
RUN     apt-get install -y python3

# Copy html
ADD static/ /src
RUN cd /src

# Run http server on port 8080
EXPOSE  8080
CMD ["python3","-m","http.server","8080"]

相关文章

Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Li...
1、什么是docker?答:docker是开源的应用容器引擎;开发人员把他们的应用及依赖包打包发布到容器当中。...
1、什么是namespace? 答:名称空间,作用隔离容器 2、namespace隔离有那些? 答:ipc:共享内存、消息队...
1、Docker能在非Linux平台(Windows+MacOS)上运行吗? 答:可以 2 、如何将一台宿主机的docker环境...
环境要求: IP hostname 192.168.1.1 node1 项目规划: 容器网段:172.16.10.0/24 NGINX:172.16.10.10...
文档上传地址:https://files.cnblogs.com/files/lin-strive/07-docker%E8%B7%A8%E4%B8%BB%E6%9C%BA%E7...