docker部署django应用

先编写Dockerfile

1
2
3
4
5
6
7
FROM python:3.6
ENV PYTHONUNBUFFERED 1
RUN mkdir /code
WORKDIR /code
ADD requirements.txt /code/
RUN pip install -r requirements.txt
ADD . /code/

编写docker-compose文件

1
2
3
4
5
6
7
8
9
10
11
12
version: '2.0'
services:

web:
build: .
command: bash -c "python manage.py makemigrations &&
python manage.py migrate &&
python manage.py runserver 0.0.0.0:8000"
volumes:
- .:/code
ports:
- "8000:8000"

运行

进入工程所在目录,运行命令启动程序

1
docker-compose up -d #后台启动

访问http://your_ip:8000

更改数据库

程序启动后,再修改数据库,可以使用以下命令行同步:

1
docker-compose run web python manage.py makemigrations && migrate

同理,想创建admin用户或进入shell,修改最后的参数为createsuperusershell.