在使用传统物理机或云服务器上部署项目都会存在一些痛点
比如:项目部署速度慢、资源浪费、迁移难且扩展低
而使用 Docker 部署项目的优势包含:
-
高效利用系统资源
-
服务启动更快
-
环境一致,迁移更加方便
本篇文章将介绍 Docker 部署一个 Python 项目的常规流程
1. Dockerfile 描述文件
Dockerfile 是一个放置在项目根目录下的描述文件,可以利用 Docker 命令基于该文件构建一个镜像
常用的指令包含:
-
FROM
用于定义基础镜像
-
MAINTAINER
指定维护者信息,可以省略不写
-
RUN
和「 安装命令 」连接在一起,可用于安装工具依赖包
-
ADD
将宿主机的文件,并进行解压
-
COPY
和 ADD 指令功能一样,但是不会进行解压操作
-
WORKDIR
用于切换工作目录
-
VOLUME
配置宿主机与容器的目录映射
-
EXPOSE
配置容器内项目对外暴露的端口号
-
CMD
指定容器启动后,运行的命令
比如,可以运行某个命令启动项目
2. 实战一下
使用 Docker 部署应用的常规流程是:
-
开发项目并本地测试通过
-
编写 Dockerfile 放置到项目根目录
-
打包