美文网首页
手工搭建centos+nginx容器,commit提交,容器主机

手工搭建centos+nginx容器,commit提交,容器主机

作者: 在路上phper | 来源:发表于2018-06-18 23:22 被阅读18次

    这节课首先学下负载均衡 先搭建个nginx容器
    前面我们使用Dockerfile对我们官方的一些镜像进行操作 ngnix在官方容器里使用的操作系统是Debain 实际开发中如果希望使用自己的操作系统(centos)也是可以的
    这节学习下如何手工搭建nginx容器(不使用官方的)
    首先我们执行docker images

    image.png
    我们根据最早的官方的纯净的镜像基础上搭建
    一般在实际开发中 mysql apache jdk nginx这些内容可能都是分开的(放在不同容器中)
    image.png
    下面我们根据最早的纯净的centos镜像(利用交互式方式进入后使用yum方式) 安装nginx镜像
    首先创建个临时容器
    image.png
    发现卡在这不动了
    接下来在打开一个终端窗口 执行docker ps
    image.png
    可以发现tmp临时容器已经存在了 如果把该容器停掉了 则第一个窗口的进程也会被释放掉了(是一个临时容器)
    接下来演示在非Dockerfile情况下 如何对容器进行操作
    首先进入该容器
    docker exec -it tmp /bin/bash
    image.png
    rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
    image.png
    yum install nginx -y
    yum方式安装的软件 配置存在 /etc/nginx/下面 nginx.conf为全局配置文件
    image.png
    image.png
    设置开机自启动
    image.png
    curl http://localhost (nginx默认也是80端口)
    image.png
    在控制台中输出了默认的首页
    说明nginx已经启动了
    接下来把容器保存起来(因为对它进行操作了 下次启动不希望在重新安装nginx了)
    希望把这个容器作为新的镜像保存起来
    需要学习一个新命令
    image.png
    image.png
    可以发现新的镜像出现了
    docker images
    image.png
    容器一旦创建启动之后会暴露80端口并且会执行cmd里面的命令
    接下来基于这个镜像来创建一个新的容器并把容器里面的文件(nginx配置文件)映射到主机 一旦修改(nginx配置文件肯定需要持久化的)一般来说不能不作处理的就存在容器里,因此需要拷贝
    首先把内容从容器中拷贝出来
    创建nginx文件夹并进入 创建conf文件夹 里面存放nginx配置文件
    image.png
    image.png
    将容器里面的nginx配置文件拷贝到主机
    image.png
    image.png
    到此步骤我们就可以把tmp容器停掉并删掉
    我们已经有了新的镜像(nginx)
    启动nginx镜像
    image.png
    docker run --privileged --name mynginx -p 9090:80 -v /home/bhc/nginx/conf/nginx.conf :/etc/nginx/nginx.conf -d centos:nginx
    把主机里面的nginx配置文件映射到新启动的容器里面的nginx配置文件 这样就可以每次修改主机上的配置文件就能映射到容器里了(尽量要少操作容器)因为容器不是持久化的,不能每次修改配置文件 都提交(commit)一次新镜像
    image.png
    可以看见出现了mynginx (变成了一个新镜像)
    现在我们进入容器和不进容器都是可以的
    下面我们不进入容器操作nginx
    curl http:localhost:9090
    由于9090防火墙已经通行
    http://192.168.31.125:9090也可以访问
    有了nginx之后 我们可以做些扩展 实现负载均衡的实例 后面我们做两个网站 实现负载均衡 在nginx里面实现容器和容器之间交互

    相关文章

      网友评论

          本文标题:手工搭建centos+nginx容器,commit提交,容器主机

          本文链接:https://www.haomeiwen.com/subject/zhgneftx.html