Docker中安装Nginx+UWSGI+Django环境

1、Docker中镜像与容器的关系

开始之前我们先理解一下镜像与容器之间的关系,镜像与容器你可以把他们理解为:
面向对象中 类与对象的关系
操作系统中 Windows与C,D,E,F盘
在这里插入图片描述在这里插入图片描述在这里插入图片描述

2、Docker配置

我这里使用CentOS装载这些东西

2.1、查找镜像

命令: docker search centos

[root@localhost ~]# docker search centos
INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED
docker.io docker.io/centos The official build of CentOS. 5071 [OK]
docker.io docker.io/ansible/centos7-ansible Ansible on Centos7 119 [OK]
docker.io docker.io/jdeathe/centos-ssh CentOS-6 6.10 x86_64 / CentOS-7 7.5.1804 x… 104 [OK]
docker.io docker.io/consol/centos-xfce-vnc Centos container with “headless” VNC sessi… 73 [OK]
docker.io docker.io/imagine10255/centos6-lnmp-php56 centos6-lnmp-php56 48 [OK]
docker.io docker.io/centos/mysql-57-centos7 MySQL 5.7 SQL database server 45

2.2、下载CentOS镜像,挑选最上面那个

命令:docker pull docker.io/centos

[root@localhost ~]# docker pull docker.io/centos
Using default tag: latest
Trying to pull repository docker.io/library/centos
latest: Pulling from docker.io/library/centos

2.3、查看本地镜像列表

命令:docker images

[root@localhost ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
docker.io/centos latest 1e1148e4cc2c 2 weeks ago 202 MB

2.4、创建容器

命令:docker run -d -p 80:8080 --name=python_web docker.io/centos
参数说明:
-d:让容器在后台运行
-p 80:8080 : 将容器内部80端口映射到主机的8080端口上
–name=python_web:设置容器名称
docker.io/centos:容器所在的镜像

[root@localhost ~]# docker run -d -p 80:8080 --name=python_web docker.io/centos
09a9424ebdf2226eaf2b67c17e8479760ab77df3c1b3407e53741e42c371597c

2.4、查看正在运行的容器

命令:docker ps

[root@localhost ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES

发现没有容器在运行,这是因为容器的生命周期依赖于内部程序的生命周期,也就是说你容器里面没有东西在运行的话,该容器启动之后就会马上关闭,所以我们可以在最后面加上 ping www.baidu.com 让它一直ping着不结束

2.5、先删除刚刚创建的容器python_web

命令:docker rm python_web

[root@localhost ~]# docker rm python_web
python_web

2.6、重建容器 python_web

命令:docker run -d -p 80:8080 --name=python_web docker.io/centos ping www.baidu.com

[root@localhost ~]# docker run -d -p 80:8080 --name=python_web docker.io/centos ping www.baidu.com
7aa05a334a786260f5c0c824a20b344e9a6713d017ac045e2d8590810c5cc068
[root@localhost ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
7aa05a334a78 docker.io/centos “ping www.baidu.com” 39 seconds ago Up 38 seconds 0.0.0.0:80->8080/tcp python_web

可以看到我们加入 ping www.baidu.com 后在执行docker ps 命令就可以查询到正在运行的容器了

2、安装Nginx

猜你喜欢

转载自blog.csdn.net/baidu_27922823/article/details/85262546