Docker运行Web项目

Docker运行Web项目

创建mongo容器

1
docker run -d --name=mongodb -p 27017 mongo

创建Python后端容器(centos/python-27-centos7后面没有使用:跟上版本,默认为latest)

1
docker run -itd --name=python -v D:/Docker/project/test:/data/www -p 8000:8000 --link mongodb:mongodb centos/python-27-centos7  /bin/bash

进入Python后端容器

1
docker exec -it 419524ba0765  /bin/bash

测试到mongodb容器的连通性

1
ping mongodb

安装项目所需依赖

1
......

运行项目

1
python main.py 8000

进行项目测试,发现差redis服务

将刚刚修改的镜像制作成新的镜像

1
docker commit -m"commit new file" -a"rexyan" 419524ba0765  centos:python2.7

新建redis容器

1
docker run -d --name=redis -p 6379 redis

将刚刚创建的新镜像关联redis和mongodb(在这之前删除之前Python容器 docker rm -f 419524ba0765,删除之前先stop,防止端口依然占用)

1
docker run -itd --name=python -v D:/Docker/project/test:/data/www -p 8000:8000 --link mongodb:mongodb --link redis:redis centos:python2.7  /bin/bash

进入新的Python后端容器

1
docker exec -it 778e2079acee  /bin/bash

运行项目

1
python main.py 8000

进行项目测试,项目完美运行

最后列出所用到的镜像 docker images

1
2
3
4
5
REPOSITORY                 TAG                 IMAGE ID            CREATED             SIZE
centos python2.7 417e1c87186e 44 minutes ago 797MB
centos/python-27-centos7 latest 1de692087005 2 days ago 650MB
redis latest bfcb1f6df2db 3 days ago 107MB
mongo latest 14c497d5c758 4 days ago 366MB

https://paste.ubuntu.com/p/2ZN3wkBRBn/