首页 > 技术文章 > dockers作业-搭建tomcat服务器-上传war包访问

NanKe-Studying 2021-12-09 21:54 原文

1. (其它) 在dockers上搭建tomcat服务器,放置一个你之前的war包,并验证成功,截图附带mac地址。

菜鸟教程:https://www.runoob.com/docker/centos-docker-install.html

su //输入密码

安装所需的软件包

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

 选择国内阿里云源地址

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

切换源有问题自己去菜鸟换

安装 Docker

yum install docker-ce docker-ce-cli containerd.io -y

启动 Docker

systemctl start docker

通过运行 hello-world 映像来验证是否正确安装了 Docker Engine-Community 。

docker run hello-world

docker 搜索tomcat

使用 docker search tomcat 命令来查看可用版本:

 拉取官方的镜像

docker pull tomcat

等待下载

由于tomcat超级大 下载又慢 docker海外服务器

Docker Hub 是我们分发和获取 Docker 镜像的中心,但由于服务器位于海外,经常会出现拉取/上传镜像时速度太慢或无法访问的情况。再加上运营方不断对 Docker Hub 的免费使用进行限制,导致我们在国内使用时总是磕磕绊绊。

如果你在使用 Docker 时也碰到了拉取镜像速度慢或拉取失败的情况,可以尝试改用国内的 Docker Hub 镜像服务器。

我们可以这样子弄

创建配置文件目录
mkdir /etc/docker

编辑配置文件,如果文件不存在,以下命令会自动创建。
vi /etc/docker/daemon.json

将下面这段配置信息粘贴到配置文件中,配置信息为 json 格式,可以根据实际需要设置多个国内的镜像服务器。
{
  "registry-mirrors": [
    "https://hub-mirror.c.163.com",
    "https://mirror.baidubce.com"
  ]
}

等待下载完成后,我们就可以在本地镜像列表里查到tomcat 镜像。

docker images|grep tomcat

运行容器

docker run --name tomcat -p 8080:8080 -v $PWD/test:/usr/local/tomcat/webapps/test -d tomcat  

--name 你容器的名字

命令说明:

-p 8080:8080:将主机的 8080 端口映射到容器的 8080 端口。-p表端口 左边自身容器的端口 右边外部环境的端口 相当于接水管

-v $PWD/test:/usr/local/tomcat/webapps/test:将主机中当前目录下的 test 挂载到容器的 /test。

成功运行

 /test 是在我们自己在webapps创建的

 如果端口被占用

 关闭服务先再重新运行 

systemctl stop tomcat
docker run --name tomcat -p 8080:8080 -v $PWD/test:/usr/local/tomcat/webapps/test -d tomcat  

去浏览器地址访问你linux ip ip addr 可查看

看到版本号代表我们tomcat服务有了 但是少了主页,开始部署我们代码 进入docker里面

查看docker容器的id 就是你进程的id

docker ps

 在docker容器中去开一个终端

docker exec -it 上面ps看到的docker进程id /bin/bash

 进去了 ls看看有啥

 进入webapps

cd webapps

 test就是刚刚上面运行时创建的目录

 退出

exit

 然后就把我们的war包丢进来 放home/nanke下

这里我上传好了,记得解压出来再把war后缀的拖进去

https://www.lanzouw.com/iM19oxfhdib
密码:2rnh

 cd进去 有war包了

 复制你的war包到docker里面 自己复制上面的id和路径

docker cp demo.war 5221764d5b56://usr/local/tomcat/webapps

 重新进去看下

docker exec -it 5221764d5b56 /bin/bash

 cd webapps 再ls发现有了

 去浏览器地址加上war包资源路径 这边的demo.web包里面的为demo.html 所以我们加上

/demo/demo.html

本来war包是index.html就会默认路径了,我们不加资源路径也会默认访问到,由于他是demo.html,所以要带上我们资源的路径

 

 

 

 

 

 

 

 

推荐阅读