Demo Django App bind Mysql using Docker
- OS X EI Capitan 10.11.6
- Docker version: 17.03.1-ce
Install docker from https://docs.docker.com/docker-for-mac/install/, and get start https://docs.docker.com/docker-for-mac/
$ git clone https://github.com/DMLTZY/docker-django.git
$ cd docker-django
$ docker-compose up
wait a minute...
if you can see below, it success
web_1 | Django version 1.8.7, using settings 'dj_demo.settings'
web_1 | Starting development server at http://0.0.0.0:8001/
web_1 | Quit the server with CONTROL-C.
connect database with
host:127.0.0.1
port:8009
username:djangodocker
password:djangodocker
database:django_docker
.
├── Dockerfile
├── README.md
├── dj_demo <-- replace with your app
│ ├── dj_demo
│ └── manage.py
├── docker-compose.yml
├── mysql
│ └── data <-- will save database from docker
├── requirements.txt
└── wait-for.sh <-- from https://github.com/Eficode/wait-for
- I use alpine image except mysql.
- I change the images source that's slow in my country. 😂
-
show running containers
$ docker ps
-
show all containers
$ docker ps -a
-
show downloaded docker images
$ docker images
-
Run a command in a new container
$ docker run --rm --name=container_name -it dockerdjango_web sh
$ exit
orctrl+d
to back to your host terminal -
Run a command in a running container
$ docker exec -it bf72189a3c51 sh
you can find like
bf72189a3c51
in$ docker ps
as CONTAINER ID -
create customed image with Dockerfile
$ cd docker-djangno $ docker build --rm -t pymysqlclient . # point means current directory $ docker images # check
-
发布镜像到docker hub
$ docker login # login to your docker hub $ docker tag dockerdjango_web dmltzy/dockerdjango $ docker images # check $ docker push dmltzy/dockerdjango # like git push
-
clear all containers
$ docker ps -a | awk 'NR>1 { print $1 }' | xargs docker rm $ docker ps -aq | xargs docker rm
-
delete specific images
$ docker images | grep 'dockerdjango_web' | awk '{ print $3 }' | xargs docker rmi
- https://docs.docker.com/
- https://docs.docker.com/engine/reference/builder/
- https://docs.docker.com/compose/compose-file/
- https://docs.docker.com/compose/startup-order/
- http://hub.daocloud.io/
- https://www.capside.com/labs/deploying-full-django-stack-with-docker-compose/
- https://howchoo.com/g/y2y1mtkznda/getting-started-with-docker-compose-and-django
- https://www.stavros.io/posts/how-deploy-django-docker/
- https://yeasy.gitbooks.io/docker_practice/content/
- http://goinbigdata.com/docker-run-vs-cmd-vs-entrypoint/
- http://www.cnblogs.com/CloudMan6/p/6875834.html