Python【算法中心 03】Docker部署Django搭建的Python应用流程实例(Docker离线安装配置+Django项目Docker部署)
Docker部署Django搭建的Python应用流程
- 1.Docker离线安装配置
- 2.Django项目Docker部署
1.Docker离线安装配置
- rpm版本安装
# 系统版本
rpm -qi centos-release
Name : centos-release
Version : 8.1
Release : 1.1911.0.8.el8
Architecture: x86_64
Install Docker Engine On 不同版本 下载地址,当前使用的是 对应版本目录下的 docker-ce-20.10.13-3.el8.x86_64.rpm
。
# 安装 yum 会自动安装依赖
yum install /path/to/package.rpm
# 启动
systemctl start docker
# 验证
docker run hello-world
如果 yum源
没有问题,也可直接使用yum install docker-ce
命令进行安装。
- tgz版安装
解压版下载地址,当前使用的是docker-20.10.13.tgz
。
# 1.解压
tar -zxvf docker-20.10.13.tgz
# 2.移动到 /usr/bin/ 目录下【不要放到其他文件夹下】
mv docker/* /usr/bin/
# 3.添加 service 服务
vim /etc/systemd/system/docker.service
docker.service
文件默认内容,仅贴出核心配置,备注信息不再贴出:
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target[Service]
Type=notify
ExecStart=/usr/bin/dockerd
ExecReload=/bin/kill -s HUP $MAINPID
TimeoutSec=0
RestartSec=2
Restart=alwaysStartLimitBurst=3
StartLimitInterval=60sLimitNOFILE=infinity
LimitNPROC=infinity
LimitCORE=infinityTasksMax=infinity
Delegate=yes
KillMode=process[Install]
WantedBy=multi-user.target
# 4.重载 unit 配置文件
systemctl daemon-reload
# 5.启动服务并查看状态
systemctl start docker
systemctl status docker
# 版本验证
[root@aliyun /]# docker version
Client:Version: 20.10.13API version: 1.40Go version: go1.16.15Git commit: a224086Built: Thu Mar 10 14:01:44 2022OS/Arch: linux/amd64Context: defaultExperimental: true
# 设置开机自启
systemctl enable docker.service
2.Django项目Docker部署
Docker 的 Python Official Image 使用指南。
FROM python:3
WORKDIR /app
COPY requirements.txt ./
RUN pip install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/
COPY . .
EXPOSE 8086
CMD python manage.py runserver 0.0.0.0:8086
使用更小的运行环境python:3.7-slim-stretch
仅98MB
。
FROM python:3.7-slim-stretch
WORKDIR /app
COPY requirements.txt ./
RUN pip install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/
COPY . .
EXPOSE 8086
CMD python manage.py runserver 0.0.0.0:8086
# 1.构建镜像 -f ./DockerFile
docker build -t algorithmcenter .
# 2.启动容器并加载镜像
docker run -di --name ac -p 8086:8086 algorithmcenter
# 3.查看日志
docker logs -f --tail=100 ac
访问验证: