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,所以要帶上我們資源的路徑