在Docker中部署django
2017-10-28 13:48
337 查看
首先在ubuntu系统中安装Docker,然后安装Docker Compose。
接下来开始在Docker中安装django。
一:定义组件
1.创建一个空目录,例如AAA。
2.在AAA目录中创建一个Dockerfile文件。
3.把下面的内容放入Dockerfile文件中。
4.保存并关闭Dockerfile文件。
5.创建requirements.txt文件。
6.把下面的内容放入到requirements.txt文件中。
7.保存关闭requirements.txt文件。
8.创建docker-compose.yml文件。
9.把下面的内容放入docker-compose.yml文件中。
10.保存关闭docker-compose.yml文件。
二:创建django project
1.进入AAA目录中。
2.运行命令:
3.使用命令:
把权限修改为用户,命令:
三:连接数据库
1.编辑composeexample/settings.py文件。
2.把DATABASES=…替换成下面的:
3.保存关闭文件。
4.使用命令:
5.在另一个terminal中使用命令:
6.关闭container。使用命令:
这样container就关闭了。
以上就是在Docker中部署django的方法。
接下来开始在Docker中安装django。
一:定义组件
1.创建一个空目录,例如AAA。
2.在AAA目录中创建一个Dockerfile文件。
3.把下面的内容放入Dockerfile文件中。
FROM python:3 ENV PYTHONUNBUFFERED 1 RUN mkdir /code WORKDIR /code ADD requirements.txt /code/ RUN pip install -r requirements.txt ADD . /code/
4.保存并关闭Dockerfile文件。
5.创建requirements.txt文件。
6.把下面的内容放入到requirements.txt文件中。
Django>=1.8,<2.0 psycopg2
7.保存关闭requirements.txt文件。
8.创建docker-compose.yml文件。
9.把下面的内容放入docker-compose.yml文件中。
version: '3' services: db: image: postgres web: build: . command: python3 manage.py runserver 0.0.0.0:8000 volumes: - .:/code ports: - "8000:8000" depends_on: - db
10.保存关闭docker-compose.yml文件。
二:创建django project
1.进入AAA目录中。
2.运行命令:
docker-compose run web django-admin.py startproject composeexample .
3.使用命令:
$ ls -l drwxr-xr-x 2 root root composeexample -rw-rw-r-- 1 user user docker-compose.yml -rw-rw-r-- 1 user user Dockerfile -rwxr-xr-x 1 root root manage.py -rw-rw-r-- 1 user user requirements.txt
把权限修改为用户,命令:
sudo chown -R $USER:$USER .
三:连接数据库
1.编辑composeexample/settings.py文件。
2.把DATABASES=…替换成下面的:
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.postgresql', 'NAME': 'postgres', 'USER': 'postgres', 'HOST': 'db', 'PORT': 5432, } }
3.保存关闭文件。
4.使用命令:
$ docker-compose up djangosample_db_1 is up-to-date Creating djangosample_web_1 ... Creating djangosample_web_1 ... done Attaching to djangosample_db_1, djangosample_web_1 db_1 | The files belonging to this database system will be owned by user "postgres". db_1 | This user must also own the server process. db_1 | db_1 | The database cluster will be initialized with locale "en_US.utf8". db_1 | The default database encoding has accordingly been set to "UTF8". db_1 | The default text search configuration will be set to "english". . . . web_1 | May 30, 2017 - 21:44:49 web_1 | Django version 1.11.1, using settings 'composeexample.settings' web_1 | Starting development server at http://0.0.0.0:8000/ web_1 | Quit the server with CONTROL-C.
5.在另一个terminal中使用命令:
$ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES def85eff5f51 django_web "python3 manage.py..." 10 minutes ago Up 9 minutes 0.0.0.0:8000->8000/tcp django_web_1 678ce61c79cc postgres "docker-entrypoint..." 20 minutes ago Up 9 minutes 5432/tcp django_db_1
6.关闭container。使用命令:
$ docker-compose down Stopping django_web_1 ... done Stopping django_db_1 ... done Removing django_web_1 ... done Removing django_web_run_1 ... done Removing django_db_1 ... done Removing network django_default
这样container就关闭了。
以上就是在Docker中部署django的方法。
相关文章推荐
- Docker 使用指南 (六)—— 使用 Docker 部署 Django 容器栈
- Docker之django+mysql简单部署示例
- docker 脚本方式搭建多容器的django部署环境
- docker6 部署Nginx django mysql
- Docker之docker-compose部署django+mysql示例
- Docker 使用指南 (六)—— 使用 Docker 部署 Django 容器栈
- 从零开始自动部署Django项目(四): 在Docker中部署Django项目
- Docker入门,如何部署Django uwsgi nginx应用
- Docker 使用指南 (六)—— 使用 Docker 部署 Django 容器栈
- 使用Docker搭建Django,Nginx,R,Python部署环境
- Docker部署Sentry+Django(无法收到告警邮件解决)
- Docker 使用指南 (六)—— 使用 Docker 部署 Django 容器栈
- Docker部署Django应用的示例
- Docker-compose部署Django+MySQL环境
- 使用Docker搭建Django,Nginx,R,Python部署环境
- 使用Docker搭建Django,Nginx,R,Python部署环境的方法
- Docker django 部署
- docker django部署
- docker中部署django项目-静态文件访问
- Docker部署Web应用(Django)