我是Docker的新手,开始了解整个事情是如何运作的。我的最终目标是将我的Django项目(目前正在本地运行)部署到GoogleCodeRun或类似的服务中,但还有一段路要走
实际上,多亏了this book,我已经在Mac上本地的Docker容器中运行了我的项目,这很好
我的Dockerfile以
FROM python:3.8
并包含
COPY Pipfile Pipfile.lock /code/
RUN pip install pipenv && pipenv install --system
因此,每次我构建容器时,我想Linux、Python、Django和我正在使用的其他软件包的可用更新都会自动包含在内(除非我声明了其他内容,例如PIP文件中的软件包)
我们的想法是在本地开发应用程序,并在我的Mac上使用Docker测试一切。当涉及到更新时,我必须检查所有内容是否仍然一致。如果本地一切正常,我(稍后)可以将容器部署到其他地方,一切都应该正常
我基本上是对的还是我错过了一些重要的事情
需要跟踪的一件重要事情是,基本映像(} 有一个
ubuntu:18.04
、python:3.8
,等等)偶尔会得到更新。您需要确保docker pull
基本映像才能获得这些更新;如果不这样做,那么您将在已有的旧基础映像之上构建一个新的应用程序映像^{pull
选项可以自动执行此操作还要记住} )
Pipfile.lock
中有非常特定的包版本,因此您需要定期更新它以获取依赖项(例如,使用^{总体策略是使用标准打包工具在本地开发Python应用程序,然后在此基础上构建映像,这通常是一个好方法
相关问题 更多 >
编程相关推荐