阿里云服务器中在Docker中创建并运行多个Tomcat(端口映射、设置yum源)

阿里云服务器中在Docker中创建并运行多个Tomcat(端口映射)

一:安装Docker
注意事项:
​由于我们学习的环境都使用的是CentOS,因此这里我们将Docker安装到CentOS上。注意:这里建议安装在CentOS7.x以上的版本,在CentOS6.x的版本中,安装前需要安装其他很多的环境而且Docker很多补丁不支持更新。
(1)yum 包更新到最新

sudo yum update

在这里插入图片描述
(2)安装需要的软件包, yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的

sudo yum install -y yum-utils device-mapper-persistent-data lvm2

在这里插入图片描述
(3)设置yum源为阿里云

sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

在这里插入图片描述
(4)安装docker
docker-ce是docker社区版

sudo yum install docker-ce

在这里插入图片描述
(5)安装后查看docker版本

docker -v

在这里插入图片描述
二: 设置ustc的镜像源
ustc是老牌的linux镜像服务提供者了,还在遥远的ubuntu 5.04版本的时候就在用。ustc的docker镜像加速器速度很快。ustc docker mirror的优势之一就是不需要注册,是真正的公共服务。https://lug.ustc.edu.cn/wiki/mirrors/help/docker

编辑该文件:

sudo vim /etc/docker/daemon.json  

如果没有运行过docker,是没有该文件的,需要手动创建docker目录,再创建daemon.json
不能直接sudo vim /etc/docker/daemon.json,因为不能在空目录下创建文件

mkdir docker

在这里插入图片描述

sudo vim daemon.json

在这里插入图片描述
按i键在该文件中粘贴如下内容:

{
"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]
}

在这里插入图片描述
保存:先按下esc 然后在 :wq
重新加载文件,重启docker

sudo systemctl daemon-reload
sudo systemctl restart docker

如果需要设置阿里云docker镜像加速,需要到阿里云官网注册,才可以看到自己的镜像加速地址
在这里插入图片描述

三:2.3 Docker的启动与停止
systemctl命令是系统服务管理器指令
启动Docker:

systemctl start docker

查看docker状态:

systemctl status docker

在这里插入图片描述
如果需要设置开机启动:

systemctl enable docker

这里就不设置了,据说有bug

docker --help

指令介绍:

cp:本地文件系统(OS操作系统|宿主机)和容器之间进行文件或者文件夹拷贝
exec:登录一个容器,使用命令行操作正在运行的容器。
images:镜像的集合查询。
ps:容器列表
pull:下载镜像
restart:重启一个或多个容器
rm:删除一个或多个容器
rmi:删除一个或多个镜像
run:创建一个容器,并运行起来
save:导出镜像到一个文件(tar)中
search:搜索镜像(从Docker Hub)
start:启动一个或多个已经停止的容器
restart:重启动一个或多个已经停止的容器
stop:停止一个或多个正在运行的容器

四:拉取镜像、创建容器
拉取镜像就是从中央仓库中下载镜像到本地
拉取镜像就是从Docker仓库下载镜像到本地,镜像名称格式为 名称:版本号,如果版本号不指定则是最新的版本
命令如下:
docker pull 镜像名称
例如,Tomcat8.0.52
(Tomcat有部分版本其webapps文件夹下为空,没有index页面,启动后通过8080端口访问会出现404)
8.0.52版本亲测没问题

拉取镜像:

docker pull tomcat:8.0.52

刚刚下载的镜像通过 docker images 就可以查看

docker images

在这里插入图片描述
创建一个Tomcat容器:

docker run -di --name=tomcat8081 -p 8081:8080 tomcat:8.0.52

-di:后台运行
-p 代表端口映射,格式为 宿主机映射端口:容器运行端口
在这里插入图片描述
再创建一个Tomcat容器:

docker run -di --name=tomcat8082 -p 8082:8080 tomcat:8.0.52

**容器是相互独立运行的,所以两个Tomcat都是8080端口不会冲突
**

查看正在运行的容器

docker ps

在这里插入图片描述
分别通过宿主机的8081和8082端口访问两个Tomcat容器
在这里插入图片描述
发现访问不了,即使关闭了阿里云服务器的防火墙也不行
需要再安全组放行端口的访问权限

在这里插入图片描述
点击配置规则
在这里插入图片描述
点击添加安全组规则
在这里插入图片描述
为避免一个个开启端口的麻烦,端口范围设置成8000~9000,意思就是这个范围的端口统统放行

再次访问8081端口
在这里插入图片描述
再次访问8082端口
在这里插入图片描述
都没有问题!---------------------------------------------------------------------------------------------------

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值