Docker安装jdk,tomcat配合nginx(windows)实现负载均衡

Docker安装jdk,tomcat配合nginx(windows)实现负载均衡
一.docker配置
1.安装centos7虚拟机(自带docker,如果没有需自己下载安装)
2.配置NAT模式网络
a.VM配置NAT模式网络上网
Windows里的VM8网段(前三位)和此虚拟机需一致
这里写图片描述

这里写图片描述

这里写图片描述

b.配置docker虚拟机网络
修改配置文件
cd /etc/sysconfig/network-scripts #进入网络配置目录
dir ifcfg* #找到网卡配置文件
ifcfg-eno16777736 ifcfg-lo
vi ifcfg-eno16777736
配置文件内容
TYPE=Ethernet
BOOTPROTO=static #改成static,针对NAT
NAME=eno16777736
UUID=4cc9c89b-cf9e-4847-b9ea-ac713baf4cc8
DEVICE=eno16777736
ONBOOT=yes #开机启动此网卡
IPADDR=192.168.190.80 #固定IP地址
NETMASK=255.255.255.0 #子网掩码
GATEWAY=192.168.190.2 #网关和NAT自动配置的相同,不同则无法登录
DNS1=192.168.190.2 #和网i关相同
ip addr #查看IP地址 ip add
service network restart #重启网络,一般需要重启否则连不上网
systemctl restart network.service #重启网络centos7

二.制作镜像及启动docker实例
1.创建目录
mkdir /usr/local/src/docker
在此目录下需要apache-tomcat-7.0.55.tar.gz(安装包) Dockerfile(镜像配置) jdk-7u51-linux-x64.tar.gz(安装包) jt-centos6.5.tar(基础镜像),ROOT.war(将项目打包的war包改名ROOT.war放在此目录)
2.Dockerfile详细配置
FROM jt-centos6.5:0.0.1

install jdk1.7

ADD jdk-7u51-linux-x64.tar.gz /usr/local/src
ENV JAVA_HOME=/usr/local/src/jdk1.7.0_51
ENV PATH= JAVAHOME/bin: PATH
ENV CLASSPATH=.: JAVAHOME/lib/dt.jar: JAVA_HOME/lib/tools.jar

install tomcat7

ADD apache-tomcat-7.0.55.tar.gz /usr/local/src
ENV CATALINA_HOME /usr/local/src/apache-tomcat-7.0.55
ENV PATH= PATH: CATALINA_HOME/bin

deploy the war

COPY ROOT.war CATALINAHOME/webapps/ROOT/ROOT.warWORKDIR CATALINA_HOME/webapps/ROOT
RUN jar xvf ROOT.war
RUN rm -rf ROOT.war

EXPOSE 8080

CMD [“/usr/local/src/apache-tomcat-7.0.55/bin/catalina.sh”,”run”]

3.制作镜像并启动docker实例
a.制作镜像
docker build -t ht:0.0.1 .
-t 表示TAG目标名称 0.0.1 表示自定义镜像版本 *注意后面有一个点表示当前路径
docker images 查看镜像
$ sudo service docker start
service docker start #启动docker
chkconfig docker on
b.启动实例
docker run -d -p 8001:8080 –name jt-tomcat jt-tomcat:0.0.1 #启动tomcat(包含jdk)
docker ps 查看正在运行的docker实例 docker ps -a查看所有docker实例
(docker run -d jt-jdk:0.0.1 ) #单独启动jdk
C.打开端口
/sbin/iptables -I INPUT -p tcp –dport 8001 -j ACCEPT
iptables -A INPUT -p tcp –dport 8001 -j ACCEPT (两种都行)
systemctl stop firewalld 关闭防火墙
d.测试tomcat正常
在地址栏输入192.168.190.80:8001如果正常进入登陆页面则部署正确,启动8002,8003端口实例,同样可以测试实现tomcat集群
三.nginx配置
1. C:\Windows\System32\drivers\etc下的host文件添加映射
127.0.0.1 www.ht.com
2.nginx的nginx.conf配置

汇通项目

server {
    listen       80;
    server_name  www.ht.com;

    location / {
       # proxy_pass   http://127.0.0.1:8084;
        proxy_pass   http://ht;
    }
}
upstream ht {
    server 192.168.190.80:8001 weight=2;
    server 192.168.190.80:8002 weight=1;
    server 192.168.190.80:8003 down; 
}

3.地址栏输入www.ht.com可正常实现三个tomcat(8001,8002,8003对应的docker实例)的轮询、权重

猜你喜欢

转载自blog.csdn.net/zhangningkid/article/details/75258922