docker多容器应用的部署

docker多容器的复杂性配置

需求

  • flask+python2.7+docker
  • 记录访问的次数的hostname_ID
  • 快速的部署

1.编写简单的flask-web界面

vim flask.py

2.编写Dockerfile文件

vim Dockerfile

3.打包我们的dockfile文件为新的镜像

[root@docker app]# docker build -t cesi/flask-redis .
[root@docker app]# docker image ls
REPOSITORY                    TAG                 IMAGE ID            CREATED              SIZE
cesi/flask-redis              latest              63487788a4fa        About a minute ago   686 MB

4.启动redis

docker run -d --name redis redis        #创建一个redis的容器

5.创建一个刚才我们打包好的镜像

docker run -d --link redis --name flask-redis -e REDIS_HOST=redis cesi/flask-redis  #-e在redis中设置环境变量

6.进入镜像测试

docker exec -it flask-redis /bin/bash   #进入flask-redis并且打开新的终端
root@d58153548277:/app# evn         #查看当前的容器中的环境变量
root@d58153548277:/app# curl 127.0.0.1:5000         #访问查看刚才写的网页是否成功
#在容器中得到了访问但是无法在主机中访问,因为端口没有映射到真实机

7.构建能够在公网上访问的flask

docker stop flask-redis;docker rm flask-redis       #停止并且删除
docker run -d -p 5000:5000 --link redis --name flask-redis -e REDIS_HOST=redis cesi/flask-redis     #创建并且映射出5000端口
#在公网上网访问IP+5000端口就可以访问了

发表评论