安装docker并部署nginx+tomcat

  1. yum install -y yum-utils device-mapper-persistent-data lvm2
  2. yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
  3. yum -y install docker
  4. systemctl start docker && docker --version(查看docker版本检测是否安装成功)

1、下载nginx+tomcat所需镜像

docker pull nginx
docker pull tomcat

2、写计划任务做时间同步,每12小时自动同步一次

crontab -e
* * */12 * * ntpdate 0.asia.pool.ntp.org

3、更新网络,关闭转发功能

echo "net.ipv4.ip_forward=1" >>/usr/lib/sysctl.d/00-system.conf
systemctl restart network

4、在nginx镜像上创建启动一个nginx容器

docker tag 容器ID nginx:v1(使用tag为nginx镜像创建一个nginx:v1版本)
docker run -ti -d -p 80:80 nginx:v1 /bin/bash(在nginx:v1上启动容器,并将本地的80端口映射到容器)

5、在tomcat镜像上启动两个tomcat容器,分别将本地的8081和8082端口映射到容器的8080

docker run -ti -d -h tomcat1 -v /usr/www1:/usr/local/tomcat/webapps/www -p 8081:8080 tomcat
docker run -ti -d -h tomcat2 -v /usr/www2:/usr/local/tomcat/webapps/www -p 8082:8080 tomcat

-v:将本地的目录映射到容器的目录下

6、宿主机创建两个目录和测试页面

mkdir -pv /usr/www1 /usr/www2

echo "Tomcat 1 html file on /usr/www1">/usr/www1/index.html

echo "Tomcat 2 html file on /usr/www2">/usr/www2/index.html

7、进入nginx容器修改配置文件负载两个tomcat

docker run exec -it nginx容器ID bash
apt-get update  &&  apt-get install vim (安装vim)
vim /etc/nginx/nginx.conf
upstream 127.0.0.1 {
    server 宿主机IP:8081;
    server 宿主机IP:8082;
}
vim /etc/nginx/conf.d/default.conf
location / {
    root /usr/share/html;
    index index.html index.htm;
    proxy_pass http://127.0.0.1;
}
nginx -t (检测nginx配置文件)
nginx -s reload  (重启nginx)