众所周知,同一个项目在不同的计算机或云服务器上,可能会有或多或少的环境问题,大多表现在环境不一致。特别是微服务部署上面,尤其需要这一点。docker可以提供一个纯式的,完全干净、统一的运行环境,它便可以完全避免可能出现的环境问题。

0、源码目录

在这里插入图片描述

1、编写Dockerfile文件

作用:生成镜像时需要执行的指令

#
FROM python:3.10

#
WORKDIR /code

#
COPY ./requirements.txt /code/requirements.txt

#
RUN pip install --no-cache-dir --upgrade -r /code/requirements.txt

#
COPY ./app /code/app

#
CMD ["uvicorn", "app.main:app", "--host", "0.0.0.0", "--port", "80"]

2、Docker根据Dockerfile文件生成Docker镜像

生成的镜像就是一个软件服务,这个软件服务包含了运行环境和源代码等。它确保了环境的一致性,可以直接运行在不同的计算机上。
进入Dockerfile同级目录执行docker build -t myimage .生成名为myimage的镜像

3、将镜像运行在Docker容器中

上面我们生成了一个软件服务,那么软件服务的运行需要基础设施(laas),如我们常见的windows,centos,redhot都是基础设施。那么Docker容器就是充当了基础设施这个角色,它的底层也是基于linux内核的。
执行docker run -d --name mycontainer -p 80:80 myimage在名为mycontainer的容器上运行myimage镜像

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐