Docker部署Python3 Django3项目手记
一.首先安装Docker
1.Docker安装
Docker安装 Docker CE 镜像源站
2.docker-compose安装
docker-compose安装 https://docs.docker.com/compose/install/
Linux命令安装
sudo curl -L "https://github.com/docker/compose/releases/download/1.25.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
赋予执行权限
sudo chmod +x /usr/local/bin/docker-compose
测试安装
$ docker-compose --version
docker-compose version 1.25.4, build 1110ad01
二.生成Dcoker镜像
1.先建个目录,也可以使用自己的
mkdir -p /mydata/docker/python3/
cd /mydata/docker/python3/ #进入目录
mkdir TestApp #创建项目目录
cd TestApp
2.编辑Dockerfile文件
vim Dockerfile
FROM python:3.7
RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app
COPY pip.conf /root/.pip/pip.conf #这里自定义 使用aliyun
COPY requirements.txt /usr/src/app/
RUN pip install -r /usr/src/app/requirements.txt
RUN rm -rf /usr/src/app
COPY . /usr/src/app
CMD [ "python", "./manage.py", "runserver", "0.0.0.0:8000"]
保存退出编辑器
这里使用 python3.7版本,可自行选择
3.编译镜像
docker build -t mypython:1.0 .
三.上传项目到当前部署目录
Django项目目录
- TestApp
- TestApp
__init__.py
asgi.py
settings.py
urls.py
wsgi.py
- app
__init__.py
admin.py
apps.py
models.py
tests.py
views.py
- templates
db.sqlite3
manage.py
requirements.txt
pip.conf
pip.conf 文件内容
[global]
index-url = http://mirrors.aliyun.com/pypi/simple/
[install]
trusted-host=mirrors.aliyun.com
自动生成和安装 requirements.txt 依赖命令
生成requirements.txt文件
pip freeze > requirements.txt
安装requirements.txt依赖
pip install -r requirements.txt
四.编辑 docker-compose.yml
vim docker-compose.yml
version: '3'
services:
djweb01:
image: 'mypython:1.0'
volumes:
- /mydata/docker/python3/TestApp:/usr/src/app
ports:
- "8000:8000"
保存退出vim
五.启动项目
当前目录执行, -d 为后台运行
docker-compose up -d
设置 docker 开机启动
systemctl enable docker
开机启动 docker-compose.yml
cd /etc/profile.d/
vim auto-start-testapp.sh
内容
docker-compose -f /mydata/docker/python3/TestApp/docker-compose.yml up -d
其他常用命令
停止 docker-compose
docker-compose stop
查看docker镜像
docker images
查看docker列表,-a 表示所有all
docker ps -a
删除docker容器
docker rm [容器ID]
删除镜像
docker rmi [镜像ID]
获取容器的日志,-f 查看实时日志
docker logs -f [容器ID或名称]