一,準備階段
docker官網:
docker hub:
一台雲伺服器:盡量選centos版本安裝。由於貧窮,本人只能使用一台學生機,還是最低配置1核2g,不過完全夠用了
二,安裝docker
sudo yum install -y yum-utils
3,設定倉庫映象
4,更新yum軟體包索引
yum makecache fast
5,安裝相關的docker docker-ce為社群版 docker-ee 為企業版
yum install docker-ce docker-ce-cli containerd.io
6,啟動docker
systemctl start docker
7,檢視是否安裝成功,如若出現安裝成功,則會顯示docker的資訊
docker version
8,檢視映象,由於並沒有安裝東西,所以應該是空的
docker images
9,解除安裝docker,如若需要的話,不需要則跳過
#解除安裝依賴
yum remove docker-ce docker-ce-cli containerd.io
#刪除資源
rm -rf /var/lib/docker
10,如需重新安裝的話,則需要解除安裝舊版本.不需要則跳過
三,安裝tomcat
1,在此之前,由於本人遇到了比較多的坑,因此經常需要做的一件事就是,重啟docker,不管三七二十一,重啟解決一半問題
sudo service docker restart
docker pull centos
docker search tomcat
docker pull tomcat:
9.0
docker images
這是本人安裝的一部分,可以發現tomcat在這裡面了,版本也是9.0
6,安裝成功之後就開始執行映象了
docker run -d -p 8080
:8080
--name tomcatqaq tomcat:
9.0
解釋一下:
-d :就是以後臺執行方式執行 也可以 -t :以互動式執行
-p :暴露埠號第乙個8080是暴露linux 的埠號,這樣外部才能連線linux
第二個埠號暴露的是容器的埠號,這樣linux才能連線容器
這樣外部就能通過伺服器訪問容器了
--name:給容器取名
tomcat:
9.0:執行時加上版本,指定是這個伺服器
7,映象執行後,可以通過ps檢視正在執行的容器,就能發現剛剛執行的已經在執行了
docker ps
docker ps -a :用於檢視最近全部執行過的容器
刪除容器,這個看需求,說說我遇到的坑吧,就是將我雲伺服器開發的埠都試了一大堆,最後發現只能8080:8080才能訪問,一次直接遞迴刪除所有的容器,這樣埠自然就解放出來了
docker rm id:不能刪除正在執行的容器,否則需要使用rm -rf刪除
docker rm -f $(docker ps -aq) 遞迴刪除所有的容器
8,關閉防火牆,如果沒有關閉防火牆,那麼curl連線肯定失敗,這也是我遇見的坑
service firewalld status :檢視狀態
service firewalld stop:關閉防火牆
9,阿里雲開啟允許訪問的埠號,由於本人用的是輕量級阿里雲服務,就是學生機,所以直接在防火牆那裡就能找到。如果不是學生機,就可以在自己的伺服器建立本例項安全組了
10,測試
使用curl測試埠號,通過ps 可以查出執行狀態以及埠號,測試即可。可以發現出現頁面404,說明可以訪問了,只是路徑出現問題
也可以在瀏覽器測試,也出現此頁面。
這也是我遇到的乙個大坑,以為我之前訪問的是 宿主機ip:8080 ,一直訪問失敗,後面才發現,原來是要自己的伺服器的 外網:8080 才能訪問
docker exec -it tomcatqaq /bin/bash
12,完成以上步驟,就可以進行最終的測試了
可能需要30s左右,我們就能在瀏覽器上訪問了。一定要用這個外網ip,而不是宿主機ip,真的我進這個坑一上午。就能出現熟悉的·介面了
大功告成!
四,總結,遇到的坑
1,修改root@後的別名
vi /etc/hostname
2,關閉防火牆
systemctl stop firewalld.service
systemctl disable firewalld.service
3,如何解決埠對映過多而導致埠被占用問題,刪除容器即可
docker rm id:不能刪除正在執行的容器,否則需要使用rm -rf刪除
docker rm -f $(docker ps -aq) 遞迴刪除所有的容器
4,使用的埠對映路徑使用8080
5,瀏覽器訪問用伺服器外網ip
6,重啟解決百分之50問題
1,重啟docker:sudo service docker restart
2,啟動services檔案:systemctl enable docker
五,tomcat安裝成功! docker使用以及dockerfile編寫
1.service docker start 2.docker images 顯示所有映象 3.docker ps a 顯示正在執行的容器,a顯示所有容器 4.docker run i t repo tag cmd 由映象建立乙個容器,i表示互動,t表示偽終端 5.docker run d v sr...
docker安裝centos下安裝tomcat
docker pull centos 7 docker run d i t bin bash docker exec it bash2.根據rz等安裝tomcat,jdk,exit退出埠訪問及消失,需要將埠對映到外部 docker commit new映象名稱 tag3.執行新的映象容器 d 後台執...
NSSortDescriptor使用以及陣列排序
nssortdescriptor 指定用於物件陣列排序的物件的屬性。物件可能是字典,這種情況就是對字典陣列排序 如果是employee物件需要按照name來排序,就生成下面的descriptor nssortdescriptor descriptor nssortdescriptor sortdes...