作者:1012720691_905e1e | 来源:互联网 | 2022-12-12 18:11
我有一个目录,其中包含一个简单的HTML文件(名称:index.html),该文件显示一些基本文本。我运行python命令:
python -m SimpleHTTPServer 7000
在同一目录中的端口7000上运行服务器,以在浏览器中显示页面。
现在,我希望能够对这一过程进行泊坞窗处理,并在此方面需要帮助。
基本上,dockerfile应该使用此python命令在7000端口运行服务器,然后在浏览器上显示html。
我的想法:
FROM ubuntu:14.04
COPY index.html
FROM python:latest
EXPOSE 80
CMD ["python SimpleHTTPServer 7000", "-m"]
另外,一旦完成,我将如何构建和运行该文件?
我很确定这是行不通的,但是由于我是新手,所以我不知道如何纠正它。
1> Const..:
另外,一旦完成,我将如何构建和运行该文件?
你近了 几个指针:
如果使用python3,则必须使用http.server或单独安装SimpleHTTPServer
如果您使用python 2.7,则无法以使用方式使用'latest'标签
容器端口和所需的目标本地端口不相同
这是Dockerfile
python 3的变体:
FROM python:latest
COPY index.html /
EXPOSE 7000
CMD python -m http.server 7000
和python 2.7:
FROM python:2.7
COPY index.html /
EXPOSE 7000
CMD python -m SimpleHTTPServer 7000
与构建一起
docker build -t my-docker-image .
并运行命令:
run --rm -it --name my-docker-instance -p 80:7000 my-docker-image
运行后,您可以转到那里http://localhost
获得容器的端口7000,前提是您的主机不在端口80上运行任何东西(如果是,则重新映射)。
笔记:
使用最新图像可以进行开发,但在生产中存在问题
工作目录设置为根目录,也许您想适当地放置文件
在简单的服务器上运行代码可以进行开发
编辑:我看到b0gusb击败了我:)