如何把一个Python应用程序装进Docker( 二 )
值得注意的是 , COPY命令的第一部分是相对于构建上下文的路径 , 而不是相对于我们的本地机器的路径 。
安装requirements.txt最后一步是在Docker映像中安装我们的依赖项 。 为了实现这一点 , 我们将使用RUN命令运行pip安装:
# 3. Install our depsRUN pip install -r /src/requirements.txt
需要注意的一件事是 , requirements.txt的路径与我们第一次运行pip安装时不同 。
这背后的原因是复制的文件在映像内的/src路径下 。
构建并运行Docker映像# 1. Base imageFROM python:3.8.3-slim-buster# 2. Copy filesCOPY . /src# 3. Install our depsRUN pip install -r /src/requirements.txt
我们的Dockerfile现在已经完成 , 我们可以使用它来构建Docker映像 。 为此 , 我们需要使用docker构建命令:
docker build -t movie-recommender .
这个命令使用当前文件夹作为构建上下文构建一个名为movie-recommender的Docker图像 。 在最后指定我们想要使用的构建上下文的路径) 。
现在我们可以使用docker run命令运行刚刚构建的图像:
docker run movie-recommender python /src/app.py
该命令将在基于电影推荐图像的容器中执行python /src/app.py 。
但是 , 如果我们尝试使用curl localhost:8888连接到我们的应用程序 , 我们将会得到一个错误 。
这怎么可能?为什么我们不能连接到在容器内运行的应用程序?
原因是我们没有将应用程序的端口公开给本地机器 。 我们可以使用-p HostPort:ContainerPort标志来实现这一点 。
因此 , 让我们尝试再次运行该命令 , 这一次指定我们希望在本地公开端口8888:
docker run -p 8888:8888 movie-recommender python /src/app.py
然后curl localhost:8888 。
现在的效果非常好!我们刚刚包含了一个Python应用程序!
英文原文:
- 教你做一个微信敲门(扫码通知)效果
- 第2天 | 12天搞定Python,运行环境(详细步骤)
- Chiplet如何开拓半导体技术的未来
- 表面上中芯国际被断供,实际上台积电可能成为下一个阿尔斯通
- 如何编写JAVA小白第一个程序
- 在线教育竞争加剧 一家公司何以一个月融资两轮
- 如何进行不确定度估算:模型为何不确定以及如何估计不确定性水平
- Python高级技巧:用一行代码减少一半内存占用
- 手把手教你用python编程写一款自己的音乐下载器
- 学大数据是否有前途 如何系统掌握大数据技术