1.环境准备:

a.宿主机CentOS7

b.连接工具FinalShell

c.镜像nginx1.20.1,tomcat

(镜像拉取:docker pull 镜像名称)

2.创建nginx文件夹,tomcat文件夹和webapps的交换文件夹,并创建container

a.创建nginx文件夹

  方法一:在http://nginx.org/en/download.html官网下载nginx后解压放在/home目录下(自定义),解压过程为方便所以直接在Finalshell上操作。

  方法二:若使用命令行操作,进入压缩包所在目录后,使用解压命令:tar vxf nginx-1.20.1.tar.gz

  

b.创建tomcat文件夹和webapps的交换文件夹

  方法一:在FinallShell直接在/home/nginx-1.20.1下新建tomcat文件夹,再在tomcat文件夹下新建webapps8081,webapps8082文件夹(自定义文件名),

      分别在webapps8081,webapps8082文件夹下新建hello文件夹(文件夹名称自定义),文件夹下放index.html文件。

  方法二:使用命令创建文件夹,命令如下:

      mkdir -p /home/nginx-1.20.1/tomcat/webapp8081/hello

      mkdir -p /home/nginx-1.20.1/tomcat/webapp8082/hello

  

c.创建容器

docker run -d --name tomcat8081 -p 8081:8080 -v /home/nginx-1.20.1/tomcat/webapps8081:/usr/local/tomcat/webapps/ 36ef696ea43d

docker run -d --name tomcat8082 -p 8082:8080 -v /home/nginx-1.20.1/tomcat/webapps8082:/usr/local/tomcat/webapps/ 36ef696ea43d

(名称自定义,映射端口自定义,镜像ID为tomcat镜像的ID)

查看容器创建结果:docker ps

3.查看两个tomcat容器IP,命令docker inspect tomcat8081

(为后续修改nginx.conf文件作准备)


 阶段性成果:浏览器访问页面


4.修改nginx.conf文件(此处直接在Finalshell直接打开文件修改,也可用vi命令编辑)

在原有的基础上增加内容:

(上图server后边接的是tomcat容器IP和端口号)

(修改后的nginx.conf文件放在下一篇随笔)

5.运行nginx容器

docker run -d --name mynginx -p 81:80 -v /home/nginx-1.20.1/conf/nginx.conf:/etc/nginx/nginx.conf -v /home/nginx-1.20.1/html:/usr/share/nginx/html -v /home/nginx-1.20.1/logs:/var/log/nginx 7ca45f2d188b

(名称自定义,映射端口号自定义,镜像ID为nginx镜像ID,如果执行该命令后使用docker ps查看容器没有出现,即执行失败时,注意检查nginx.conf文件内容,检查完成后使用命令docker rm -f mynginx删除容器后再次执行)


最终效果:同个网址,刷新后会访问不同页面


Docker+nginx搭建tomcat集群的更多相关文章

  1. docker+nginx搭建tomcat集群(附录)——nginx.conf文件

    附录:nginx.conf修改后的文件内容 user root;worker_processes 2; #error_log logs/error.log;#error_log logs/error. ...

  2. 利用nginx搭建tomcat集群

    1.tomcat集群 利用nginx对请求进行分流,将请求平均的分给不同的tomcat去处理,减少单个tomcat的负载量,提高tomcat的响应速度. 2.创建多个tomcat服务器(同一个服务器上 ...

  3. Docker如何使用nginx搭建tomcat集群

    首先创建tomcat的文件夹 , 为了方便docker的配置 我这里直接在根目录中创建 第一步:创建文件夹:发布文件夹 mkdir -p /docker/tomcat/webapp8081 mkdir ...

  4. 使用nginx搭建tomcat集群配置

    软件准备: (1)jdk-8u73-linux-x64.tar.gz (2)apache-tomcat-7.0.57.tar.gz (3)nginx-1.7.7.tar.gz 准备3台Linux机器, ...

  5. Tengine(nginx) 搭建Tomcat集群

    好久没有更新学习的内容了,就是得强迫自己写点东西 记录自己的学习,才能更好的进步! Tengine是由淘宝网发起的Web服务器项目.它在Nginx的基础上,针对大访问量网站的需求,添加了很多高级功能和 ...

  6. Docker Compose 一键部署Nginx代理Tomcat集群

    Docker Compose 一键部署Nginx代理Tomcat集群 目录结构 [root@localhost ~]# tree compose_nginx_tomcat/ compose_nginx ...

  7. nginx的简单使用和使用nginx在windows上搭建tomcat集群

    nginx是一款轻量级的web服务器,常用的作用为服务器/反向代理服务器以及电子邮件(IMAP/POP3)代理服务器 1.为什么我们要使用Nginx? 反向代理: 反向代理(Reverse Proxy ...

  8. 使用Nginx搭建Tomcat9集群,Redis实现Session共享

    使用Nginx搭建Tomcat9集群,Redis实现Session共享 1.tomcat准备 首先准备两个tomcat9 ,修改配置文件server.xml 如果在多个服务器上分别启动tomcat 则 ...

  9. Linux下搭建tomcat集群全记录(转)

    本文将讲述如何在Linux下搭建tomcat集群,以及搭建过程中可能的遇到的问题和解决方法.为简单起见,本文演示搭建的集群只有两个tomact节点外加一个apache组成,三者将安装在同一机器上:ap ...

随机推荐

  1. symfony的几个请求变量和方法

    请求变量 // 全部变量 $request->query->all(); // 指定变量 $request->query->get('abc'); 请求方式 $request- ...

  2. Java基础系列(28)- 方法的定义和调用

    方法的定义 Java的方法类似于其他语言的函数,是一段用来完成特定功能的代码片段,一般情况下,定义一个方法包含以下语法: 修饰符 返回值类型 方法名(参数类型 参数名){ -- 方法体 -- retu ...

  3. php 设计模式 --桥接模式

    php抽象类和接口的区别 https://www.cnblogs.com/vinter/p/8716685.html 什么时候适合使用 --- 多个角色配合工作:抽象角色对应具体角色: <?ph ...

  4. python编码问题:UnicodeDecodeError: 'gbk' codec can't decode

    在获取yaml文件数据时,提示:UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 2: illegal multib ...

  5. LR虚拟用户已设置集合点,但controller无法设置集合点策略的解决方案

    原文来自:https://blog.csdn.net/qq_34982914/article/details/90905030 学习loadrunner的过程中,肯定涉及集合点的添加,但是我们按照书上 ...

  6. 面试必问:Java 垃圾回收机制

    摘要:垃圾回收机制是守护线程的最佳示例,因为它始终在后台运行. 本文分享自华为云社区<一文带你了解Java 中的垃圾回收机制>,作者:海拥. 介绍 在 C/C++ 中,程序员负责对象的创建 ...

  7. kubelet源码分析——启动Pod

    前文说到Kubelet启动时,调用到kubelet.Run方法,里面最核心的就是调用到kubelet.syncLoop.它是一个循环,这个循环里面有若干个检查和同步操作,其中一个是地在监听Pod的增删 ...

  8. 提问式复习:图文回顾 redo log 相关知识

    原文链接:提问式复习:图文回顾 redo log 相关知识 1.如何提升 redo日志 的写性能? 为了保证 redo日志 不丢失,会在磁盘中开辟一块空间将日志保存起来.但是这样会有一个问题,磁盘的读 ...

  9. Skywalking-09:OAL原理——如何通过动态生成的Class类保存数据

    OAL 如何通过动态生成的 Class 类,保存数据 前置工作 OAL 如何将动态生成的 SourceDispatcher 添加到 DispatcherManager // org.apache.sk ...

  10. Python代码阅读(第12篇):初始化二维数组

    Python 代码阅读合集介绍:为什么不推荐Python初学者直接看项目源码 本篇阅读的代码实现了二维数组的初始化功能,根据给定的宽高初始化二维数组. 本篇阅读的代码片段来自于30-seconds-o ...