您的位置:首页 > 运维架构 > Docker

Docker的安装和镜像管理并利用Docker容器实现nginx的负载均衡、动静分离

2017-11-09 16:59 1216 查看
Docker的安装一、Docker的概念Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。


二、安装Docker1.检查内核版本# uname -r 查看当前linux得版本信息Docker要求CentOS7最低内核版本为3.1版本2. 关闭防火墙和selinux# systemctl stop firewalld# setenforce 03.使用yum安装docker# yum install -y docker# systemctl start docker 开启docker服务_______________________________________________________________________________# ps aux | grep docker 查看docker服务# docker search nginx 查看nginx镜像(# docker pull centos:7 ) 下载官方的 CentOS 镜像到本地# docker pull docker.io/nginx 下载nginx镜像# docker pull docker.io/tomcat 下载tomcat镜像由于Docker官方服务器在海外,因此不推荐使用,这里建议使用网易蜂巢镜像中心https://c.163.com/hub#/m/home/4.同步时间# date 0220195120175.安装docker -devel# yum -y install docker-devel6.下载镜像# docker pull hub.c.163.com/library/tomcat:latest# docker pull hub.c.163.com/library/nginx:latest# docker pull hub.c.163.com/public/centos:7.0


# docker images 查看下载好的镜像



这时创建容器会报错,因此需要修改/usr/lib/sysctl.d/00-system.conf添加如下代码:net.ipv4.ip_forward=1
重启network服务# systemctl restart network 在docker配置负载均衡 创建nginx容器# docker tag db079554b4d2 nginx:111 修改镜像名字# docker run -ti -d -p 80:80 hub.c.163.com/library/nginx /bin/bash 创建nginx容器# docker ps (-a) 查看docker运行中(所有)容器


# docker exec -ti a62119e032b3 /bin/bash 进入后台容器并提供bash# /usr/sbin/nginx 启动nginx服务# apt-get update 升级vim# apt-get install vim 安装vim 在宿主机的根目录创建两个tomcat的发布目录# mkdir www1 www2


创建tomcat容器1&2(利用Xshell复制ssh渠道功能再开两个窗口)# docker run -ti -d -P -h tomcat1 -v /www1:/usr/local/tomcat/webapps/ROOThub.c.163.com/library/tomcat /bin/bash# docker ps –a


# docker exec -ti f6725eb67195 /bin/bash# bin/startup.sh# docker run -ti -d -h tomcat2 -P -v /www2:/usr/local/tomcat/webapps/ROOT hub.c.163.com/library/tomcat /bin/bash


# docker ps -a# docker exec -ti 5157b553106d /bin/bash# bin/startup.sh使用# docker ps -a在宿主机查看映射的端口


为tomcat1&2映射的目录写下测试页面,我在这里使用tomcat1和tomcat2作为页面内容区分# cd /www1# vim index.jsp# cd /www2# vim index.jsp


在nginx容器中进行负载均衡配置# vim /etc/nginx/nginx.confupstream zeyu { server 192.168.81.60:32771; server 192.168.81.60:32772;}


# vim /etc/nginx/conf.d/default.conf # location / { # root /usr/share/nginx/html; # index index.html index.htm; # } location ~ { proxy_pass http://zeyu; }


# pkill nginx# /usr/sbin/nginx验证


Docker的动静分离在Docker的nginx容器中修改# vim /etc/nginx/conf.d/default.conf location / { root /usr/share/nginx/html; index index.html index.htm; } location ~*\.jsp$ { proxy_pass http://zeyu; proxy_redirect off; }


# pkill nginx# /usr/sbin/nginx浏览器访问验证访问IP/index.html为nginx欢迎页面


访问IP/index.jsp为tomcat测试页面1&2


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  安装 镜像 Docker