docker django部署
2018-02-25 01:00
363 查看
https://hub.docker.com/_/django/
(一)dockerfile方法
(二)不用dockerfile方法:
在项目的根目录下执行以上命令即可
[root@centos4 mysite]# ls
blog db.sqlite3 manage.py mysite requirements.txt sftp-config.json static uwsgibk uwsgi.ini
[root@centos4 mysite]#
[root@centos4 mysite]# docker exec -it 236 /bin/bash
root@2361f1355d70:/usr/src/app# ls
blog db.sqlite3 manage.py mysite requirements.txt sftp-config.json static uwsgi.ini uwsgibk
root@2361f1355d70:/usr/src/app#
DEPRECATION: The default format will switch to columns in the future. You can use --format=(legacy|columns) (or define a format=(legacy|columns) in your pip.conf under the [list] section) to disable this warning.
Django (1.8.6)
django-bootstrap3 (9.1.0)
django-ckeditor (5.4.0)
django-js-asset (0.1.1)
mysqlclient (1.3.9)
olefile (0.44)
Pillow (4.3.0)
pip (9.0.1)
psutil (5.4.2)
psycopg2 (2.6.2)
setuptools (20.10.1)
root@2361f1355d70:/usr/src/app#
[root@centos4 mysite]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2361f1355d70 django "bash -c 'pip install" 40 minutes ago Up 26 seconds 0
4000
.0.0.0:8000->8000/tcp some-django-app
d6bb2b0cf809 registry "/entrypoint.sh /etc/" 9 days ago Up About an hour 0.0.0.0:5000->5000/tcp registry
[root@centos4 ~]# docker history eb40dcf64078
IMAGE CREATED CREATED BY SIZE COMMENT
eb40dcf64078 14 months ago /bin/sh -c pip install mysqlclient psycopg2 d 37.01 MB
<missing> 14 months ago /bin/sh -c #(nop) ENV DJANGO_VERSION=1.10.4 0 B
<missing> 14 months ago /bin/sh -c apt-get update && apt-get install 204.7 MB
<missing> 14 months ago /bin/sh -c #(nop) CMD ["python3"] 0 B
<missing> 14 months ago /bin/sh -c cd /usr/local/bin && { [ -e easy_ 0 B
<missing> 14 months ago /bin/sh -c set -ex && buildDeps=' gcc li 63.93 MB
<missing> 14 months ago /bin/sh -c #(nop) ENV PYTHON_PIP_VERSION=9.0 0 B
<missing> 14 months ago /bin/sh -c #(nop) ENV PYTHON_VERSION=3.4.5 0 B
<missing> 14 months ago /bin/sh -c #(nop) ENV GPG_KEY=97FC712E4C024B 0 B
<missing> 14 months ago /bin/sh -c apt-get update && apt-get install 7.425 MB
<missing> 14 months ago /bin/sh -c #(nop) ENV LANG=C.UTF-8 0 B
<missing> 14 months ago /bin/sh -c #(nop) ENV PATH=/usr/local/bin:/u 0 B
<missing> 14 months ago /bin/sh -c #(nop) CMD ["/bin/bash"] 0 B
<missing> 14 months ago /bin/sh -c #(nop) ADD file:1d214d2782eaccc743 123 MB
[root@centos4 ~]# docker logs 2361f1355d70 --tail 10
Running setup.py install for psutil: started
Running setup.py install for psutil: finished with status 'done'
Successfully installed Django-1.8.6 Pillow-4.3.0 django-bootstrap3-9.1.0 django-ckeditor-5.4.0 django-js-asset-0.1.1 olefile-0.44 psutil-5.4.2
Requirement already satisfied: Django==1.8.6 in /usr/local/lib/python3.4/site-packages (from -r requirements.txt (line 1))
Requirement already satisfied: django-bootstrap3==9.1.0 in /usr/local/lib/python3.4/site-packages (from -r requirements.txt (line 2))
Requirement already satisfied: django-ckeditor==5.4.0 in /usr/local/lib/python3.4/site-packages (from -r requirements.txt (line 3))
Requirement already satisfied: django-js-asset==0.1.1 in /usr/local/lib/python3.4/site-packages (from -r requirements.txt (line 4))
Requirement already satisfied: olefile==0.44 in /usr/local/lib/python3.4/site-packages (from -r requirements.txt (line 5))
Requirement already satisfied: Pillow==4.3.0 in /usr/local/lib/python3.4/site-packages (from -r requirements.txt (line 6))
Requirement already satisfied: psutil==5.4.2 in /usr/local/lib/python3.4/site-packages (from -r requirements.txt (line 7))
[root@centos4 ~]#
[root@centos4 mysite]# netstat -anp | grep 8000
tcp6 0 0 :::8000 :::* LISTEN 17211/docker-proxy-
[root@centos4 mysite]#
docker stop 2361f1355d70后无法访问
(一)dockerfile方法
FROM python:3.4 RUN apt-get update \ && apt-get install -y --no-install-recommends \ postgresql-client \ && rm -rf /var/lib/apt/lists/* WORKDIR /usr/src/app COPY requirements.txt ./ RUN pip install -r requirements.txt COPY . . EXPOSE 8000 CMD ["python", "manage.py", "runserver", "0.0.0.0:8000"]
(二)不用dockerfile方法:
$ docker run --name some-django-app -v "$PWD":/usr/src/app -w /usr/src/app -p 8000:8000 \ -d django bash -c "pip install -r requirements.txt && python manage.py runserver 0.0.0.0:8000"
在项目的根目录下执行以上命令即可
[root@centos4 mysite]# ls
blog db.sqlite3 manage.py mysite requirements.txt sftp-config.json static uwsgibk uwsgi.ini
[root@centos4 mysite]#
[root@centos4 mysite]# docker exec -it 236 /bin/bash
root@2361f1355d70:/usr/src/app# ls
blog db.sqlite3 manage.py mysite requirements.txt sftp-config.json static uwsgi.ini uwsgibk
root@2361f1355d70:/usr/src/app#
-v "$PWD":/usr/src/app可以看到宿主机中项目上下能内容已经挂载到容器内的/usr/src/app中了
pip install -r requirements.txtroot@2361f1355d70:/usr/src/app# pip list
DEPRECATION: The default format will switch to columns in the future. You can use --format=(legacy|columns) (or define a format=(legacy|columns) in your pip.conf under the [list] section) to disable this warning.
Django (1.8.6)
django-bootstrap3 (9.1.0)
django-ckeditor (5.4.0)
django-js-asset (0.1.1)
mysqlclient (1.3.9)
olefile (0.44)
Pillow (4.3.0)
pip (9.0.1)
psutil (5.4.2)
psycopg2 (2.6.2)
setuptools (20.10.1)
root@2361f1355d70:/usr/src/app#
[root@centos4 mysite]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2361f1355d70 django "bash -c 'pip install" 40 minutes ago Up 26 seconds 0
4000
.0.0.0:8000->8000/tcp some-django-app
d6bb2b0cf809 registry "/entrypoint.sh /etc/" 9 days ago Up About an hour 0.0.0.0:5000->5000/tcp registry
[root@centos4 ~]# docker history eb40dcf64078
IMAGE CREATED CREATED BY SIZE COMMENT
eb40dcf64078 14 months ago /bin/sh -c pip install mysqlclient psycopg2 d 37.01 MB
<missing> 14 months ago /bin/sh -c #(nop) ENV DJANGO_VERSION=1.10.4 0 B
<missing> 14 months ago /bin/sh -c apt-get update && apt-get install 204.7 MB
<missing> 14 months ago /bin/sh -c #(nop) CMD ["python3"] 0 B
<missing> 14 months ago /bin/sh -c cd /usr/local/bin && { [ -e easy_ 0 B
<missing> 14 months ago /bin/sh -c set -ex && buildDeps=' gcc li 63.93 MB
<missing> 14 months ago /bin/sh -c #(nop) ENV PYTHON_PIP_VERSION=9.0 0 B
<missing> 14 months ago /bin/sh -c #(nop) ENV PYTHON_VERSION=3.4.5 0 B
<missing> 14 months ago /bin/sh -c #(nop) ENV GPG_KEY=97FC712E4C024B 0 B
<missing> 14 months ago /bin/sh -c apt-get update && apt-get install 7.425 MB
<missing> 14 months ago /bin/sh -c #(nop) ENV LANG=C.UTF-8 0 B
<missing> 14 months ago /bin/sh -c #(nop) ENV PATH=/usr/local/bin:/u 0 B
<missing> 14 months ago /bin/sh -c #(nop) CMD ["/bin/bash"] 0 B
<missing> 14 months ago /bin/sh -c #(nop) ADD file:1d214d2782eaccc743 123 MB
[root@centos4 ~]# docker logs 2361f1355d70 --tail 10
Running setup.py install for psutil: started
Running setup.py install for psutil: finished with status 'done'
Successfully installed Django-1.8.6 Pillow-4.3.0 django-bootstrap3-9.1.0 django-ckeditor-5.4.0 django-js-asset-0.1.1 olefile-0.44 psutil-5.4.2
Requirement already satisfied: Django==1.8.6 in /usr/local/lib/python3.4/site-packages (from -r requirements.txt (line 1))
Requirement already satisfied: django-bootstrap3==9.1.0 in /usr/local/lib/python3.4/site-packages (from -r requirements.txt (line 2))
Requirement already satisfied: django-ckeditor==5.4.0 in /usr/local/lib/python3.4/site-packages (from -r requirements.txt (line 3))
Requirement already satisfied: django-js-asset==0.1.1 in /usr/local/lib/python3.4/site-packages (from -r requirements.txt (line 4))
Requirement already satisfied: olefile==0.44 in /usr/local/lib/python3.4/site-packages (from -r requirements.txt (line 5))
Requirement already satisfied: Pillow==4.3.0 in /usr/local/lib/python3.4/site-packages (from -r requirements.txt (line 6))
Requirement already satisfied: psutil==5.4.2 in /usr/local/lib/python3.4/site-packages (from -r requirements.txt (line 7))
[root@centos4 ~]#
[root@centos4 mysite]# netstat -anp | grep 8000
tcp6 0 0 :::8000 :::* LISTEN 17211/docker-proxy-
[root@centos4 mysite]#
docker stop 2361f1355d70后无法访问
相关文章推荐
- Docker 使用指南 (六)—— 使用 Docker 部署 Django 容器栈
- Docker 使用指南 (六)—— 使用 Docker 部署 Django 容器栈
- docker 脚本方式搭建多容器的django部署环境
- 使用Docker搭建Django,Nginx,R,Python部署环境
- docker6 部署Nginx django mysql
- docker中部署django项目-静态文件访问
- Docker之django+mysql简单部署示例
- Docker之docker-compose部署django+mysql示例
- Docker部署Sentry+Django(无法收到告警邮件解决)
- Docker入门,如何部署Django uwsgi nginx应用
- Docker 使用指南 (六)—— 使用 Docker 部署 Django 容器栈
- Docker部署Web应用(Django)
- 从零开始自动部署Django项目(四): 在Docker中部署Django项目
- 在Docker中部署django
- 使用指南 (六)—— 使用 Docker 部署 Django 容器栈
- Docker-compose部署Django+MySQL环境
- Docker django 部署
- 使用Docker搭建Django,Nginx,R,Python部署环境
- Docker 使用指南 (六)—— 使用 Docker 部署 Django 容器栈
- 使用Docker搭建Django,Nginx,R,Python部署环境的方法