1、yum方式安裝docker
1.1、更新yum
sudo yum update
- 1
![[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-oSZZJkFZ-1595320958222)(/Users/mac/Documents/csdn草稿/Linux/docker/image-20200717104345159.png)]](/image/aHR0cHM6Ly9pbWctYmxvZy5jc2RuaW1nLmNuLzIwMjAwNzIxMTY0MzQwNjc4LnBuZz94LW9zcy1wcm9jZXNzPWltYWdlL3dhdGVybWFyayx0eXBlX1ptRnVaM3BvWlc1bmFHVnBkR2ssc2hhZG93XzEwLHRleHRfYUhSMGNITTZMeTlpYkc5bkxtTnpaRzR1Ym1WMEwxTm9ZWEo1YkdGc1lRPT0sc2l6ZV8xNixjb2xvcl9GRkZGRkYsdF83MA==.png)
![[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-4t7bpxem-1595320958222)(/Users/mac/Documents/csdn草稿/Linux/docker/image-20200717104354453.png)]](/image/aHR0cHM6Ly9pbWctYmxvZy5jc2RuaW1nLmNuLzIwMjAwNzIxMTY0MzU4NzAucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2Uvd2F0ZXJtYXJrLHR5cGVfWm1GdVozcG9aVzVuYUdWcGRHayxzaGFkb3dfMTAsdGV4dF9hSFIwY0hNNkx5OWliRzluTG1OelpHNHVibVYwTDFOb1lYSjViR0ZzWVE9PSxzaXplXzE2LGNvbG9yX0ZGRkZGRix0Xzcw.png)
![[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-eEHafcLo-1595320958223)(/Users/mac/Documents/csdn草稿/Linux/docker/image-20200717105951444.png)]](/image/aHR0cHM6Ly9pbWctYmxvZy5jc2RuaW1nLmNuLzIwMjAwNzIxMTY0NDEzODM3LnBuZz94LW9zcy1wcm9jZXNzPWltYWdlL3dhdGVybWFyayx0eXBlX1ptRnVaM3BvWlc1bmFHVnBkR2ssc2hhZG93XzEwLHRleHRfYUhSMGNITTZMeTlpYkc5bkxtTnpaRzR1Ym1WMEwxTm9ZWEo1YkdGc1lRPT0sc2l6ZV8xNixjb2xvcl9GRkZGRkYsdF83MA==.png)
(更新時間,我這次大概用了二十分鍾)
1.2、yum方式安裝docker
yum install docker
- 1
![[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-SbiCAVan-1595320958224)(/Users/mac/Documents/csdn草稿/Linux/docker/image-20200717111120098.png)]](/image/aHR0cHM6Ly9pbWctYmxvZy5jc2RuaW1nLmNuLzIwMjAwNzIxMTY0NDMxODQxLnBuZz94LW9zcy1wcm9jZXNzPWltYWdlL3dhdGVybWFyayx0eXBlX1ptRnVaM3BvWlc1bmFHVnBkR2ssc2hhZG93XzEwLHRleHRfYUhSMGNITTZMeTlpYkc5bkxtTnpaRzR1Ym1WMEwxTm9ZWEo1YkdGc1lRPT0sc2l6ZV8xNixjb2xvcl9GRkZGRkYsdF83MA==.png)
![[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-fV6D3isx-1595320958225)(/Users/mac/Documents/csdn草稿/Linux/docker/image-20200717111131662.png)]](/image/aHR0cHM6Ly9pbWctYmxvZy5jc2RuaW1nLmNuLzIwMjAwNzIxMTY0NDQ2MzI4LnBuZz94LW9zcy1wcm9jZXNzPWltYWdlL3dhdGVybWFyayx0eXBlX1ptRnVaM3BvWlc1bmFHVnBkR2ssc2hhZG93XzEwLHRleHRfYUhSMGNITTZMeTlpYkc5bkxtTnpaRzR1Ym1WMEwxTm9ZWEo1YkdGc1lRPT0sc2l6ZV8xNixjb2xvcl9GRkZGRkYsdF83MA==.png)
![[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-ey6KUDQ4-1595320958226)(/Users/mac/Documents/csdn草稿/Linux/docker/image-20200717111314870.png)]](/image/aHR0cHM6Ly9pbWctYmxvZy5jc2RuaW1nLmNuLzIwMjAwNzIxMTY0NTAwMTM0LnBuZz94LW9zcy1wcm9jZXNzPWltYWdlL3dhdGVybWFyayx0eXBlX1ptRnVaM3BvWlc1bmFHVnBkR2ssc2hhZG93XzEwLHRleHRfYUhSMGNITTZMeTlpYkc5bkxtTnpaRzR1Ym1WMEwxTm9ZWEo1YkdGc1lRPT0sc2l6ZV8xNixjb2xvcl9GRkZGRkYsdF83MA==.png)
1.3、查看版本
docker -v
- 1
![[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-6U1DCn3U-1595320958227)(/Users/mac/Documents/csdn草稿/Linux/docker/image-20200717111425849.png)]](/image/aHR0cHM6Ly9pbWctYmxvZy5jc2RuaW1nLmNuLzIwMjAwNzIxMTY0NTE0NzU4LnBuZw==.png)
2、簡單使用
2.1、啟動docker服務
我用的systemctl start docker啟動的,如下啟動命令是我網上找的
sudo service docker start systemctl start docker service docker start
- 1
- 2
- 3
關閉docker命令systemctl stop docker
2.2、創建tomcat鏡像
2.2.1、查看可用版本
docker search tomcat
- 1
![[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-PSYUroSJ-1595320958228)(/Users/mac/Documents/csdn草稿/Linux/docker/image-20200721100102512.png)]](/image/aHR0cHM6Ly9pbWctYmxvZy5jc2RuaW1nLmNuLzIwMjAwNzIxMTY0NTQ0NTY5LnBuZz94LW9zcy1wcm9jZXNzPWltYWdlL3dhdGVybWFyayx0eXBlX1ptRnVaM3BvWlc1bmFHVnBkR2ssc2hhZG93XzEwLHRleHRfYUhSMGNITTZMeTlpYkc5bkxtTnpaRzR1Ym1WMEwxTm9ZWEo1YkdGc1lRPT0sc2l6ZV8xNixjb2xvcl9GRkZGRkYsdF83MA==.png)
2.2.2、拉取鏡像
docker pull tomcat
- 1
報錯:
error pulling image configuration: Get https://production.cloudflare.docker.com/registry-v2/docker/registry/v2/blobs/sha256![[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-Cisybwa7-1595320958229)(/Users/mac/Documents/csdn草稿/Linux/docker/image-20200721100539795.png)]](/image/aHR0cHM6Ly9pbWctYmxvZy5jc2RuaW1nLmNuLzIwMjAwNzIxMTY0NjExNzUxLnBuZz94LW9zcy1wcm9jZXNzPWltYWdlL3dhdGVybWFyayx0eXBlX1ptRnVaM3BvWlc1bmFHVnBkR2ssc2hhZG93XzEwLHRleHRfYUhSMGNITTZMeTlpYkc5bkxtTnpaRzR1Ym1WMEwxTm9ZWEo1YkdGc1lRPT0sc2l6ZV8xNixjb2xvcl9GRkZGRkYsdF83MA==.png)
解決方式:
在/etc/resolv.conf文件中添加nameserver 8.8.8.8。
若原本就有nameserver就刪掉,重寫成nameserver 8.8.8.8。(反正reboot后,nameserver會還原的,不用擔心會出啥問題。)![[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-JPkDypdy-1595320958229)(/Users/mac/Documents/csdn草稿/Linux/docker/image-20200721104947565.png)]](/image/aHR0cHM6Ly9pbWctYmxvZy5jc2RuaW1nLmNuLzIwMjAwNzIxMTY0NjQ3Njg2LnBuZw==.png)
而后service docker restart![[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-kaYq7Ojc-1595320958230)(/Users/mac/Documents/csdn草稿/Linux/docker/image-20200721104853028.png)]](/image/aHR0cHM6Ly9pbWctYmxvZy5jc2RuaW1nLmNuLzIwMjAwNzIxMTY0NzA4OTA5LnBuZz94LW9zcy1wcm9jZXNzPWltYWdlL3dhdGVybWFyayx0eXBlX1ptRnVaM3BvWlc1bmFHVnBkR2ssc2hhZG93XzEwLHRleHRfYUhSMGNITTZMeTlpYkc5bkxtTnpaRzR1Ym1WMEwxTm9ZWEo1YkdGc1lRPT0sc2l6ZV8xNixjb2xvcl9GRkZGRkYsdF83MA==.png)
而后docker pull tomcat![[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-6tziiwZ5-1595320958231)(/Users/mac/Documents/csdn草稿/Linux/docker/image-20200721105327961.png)]](/image/aHR0cHM6Ly9pbWctYmxvZy5jc2RuaW1nLmNuLzIwMjAwNzIxMTY0NzMxMzk0LnBuZz94LW9zcy1wcm9jZXNzPWltYWdlL3dhdGVybWFyayx0eXBlX1ptRnVaM3BvWlc1bmFHVnBkR2ssc2hhZG93XzEwLHRleHRfYUhSMGNITTZMeTlpYkc5bkxtTnpaRzR1Ym1WMEwxTm9ZWEo1YkdGc1lRPT0sc2l6ZV8xNixjb2xvcl9GRkZGRkYsdF83MA==.png)
至此問題解決。
![[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-SZI3NcF8-1595320958232)(/Users/mac/Documents/csdn草稿/Linux/docker/image-20200721105447531.png)]](/image/aHR0cHM6Ly9pbWctYmxvZy5jc2RuaW1nLmNuLzIwMjAwNzIxMTY0NzU4NTc3LnBuZw==.png)
2.2.3、啟動tomcat鏡像
查看docker所有鏡像docker images
因為服務器本身有的tomcat服務端口是8080,為避免端口沖突,所以啟動tomcat鏡像命令用的docker run -d -p 8081:8080 tomcat。
(docker run -d -p 8081:8080 tomcat命令相當於docker里面是8080端口,對於服務器而言是8081端口)
(docker相當於一個容器,docker里面的端口和服務器的端口是獨立的。)
(所以,直接服務器ip:8080是訪問不到docker的tomcat鏡像的,要用服務器ip:8081。)
(若是中轉服務器上部署的服務,那么當用瀏覽器訪問的時候,要看當前“服務器IP:端口”對應的暴露給外部的url是多少。)
查看容器日志docker logs -f 容器id![[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-OAPWRfR8-1595320958233)(/Users/mac/Documents/csdn草稿/Linux/docker/image-20200721135637073.png)]](/image/aHR0cHM6Ly9pbWctYmxvZy5jc2RuaW1nLmNuLzIwMjAwNzIxMTY0ODE3MTEwLnBuZz94LW9zcy1wcm9jZXNzPWltYWdlL3dhdGVybWFyayx0eXBlX1ptRnVaM3BvWlc1bmFHVnBkR2ssc2hhZG93XzEwLHRleHRfYUhSMGNITTZMeTlpYkc5bkxtTnpaRzR1Ym1WMEwxTm9ZWEo1YkdGc1lRPT0sc2l6ZV8xNixjb2xvcl9GRkZGRkYsdF83MA==.png)
關閉容器命令docker stop 容器id
2.2.4、搞點項目進tomcat鏡像看下效果
進入tomcat鏡像docker exec -it 容器id /bin/bash
(docker啟動的tomcat鏡像,訪問對應tomcat頁面看不到貓,因為webapps里面什么文件都沒有。所以你什么都訪問不到。可以用cp命令或mv命令,將別的tomcat的webapps復制粘貼到tomcat鏡像里,就能看見貓了。)![[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-5qbZ1JQs-1595320958234)(/Users/mac/Documents/csdn草稿/Linux/docker/image-20200721153308714.png)]](/image/aHR0cHM6Ly9pbWctYmxvZy5jc2RuaW1nLmNuLzIwMjAwNzIxMTY0ODQ5ODM3LnBuZz94LW9zcy1wcm9jZXNzPWltYWdlL3dhdGVybWFyayx0eXBlX1ptRnVaM3BvWlc1bmFHVnBkR2ssc2hhZG93XzEwLHRleHRfYUhSMGNITTZMeTlpYkc5bkxtTnpaRzR1Ym1WMEwxTm9ZWEo1YkdGc1lRPT0sc2l6ZV8xNixjb2xvcl9GRkZGRkYsdF83MA==.png)
掛載
1.傳個war包到服務器上
![[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-GLjLmTkV-1595320958235)(/Users/mac/Documents/csdn草稿/Linux/docker/image-20200721154537821.png)]](/image/aHR0cHM6Ly9pbWctYmxvZy5jc2RuaW1nLmNuLzIwMjAwNzIxMTY0OTA5NDgwLnBuZw==.png)
2.在容器都沒用的情況下刪除容器
docker stop $(docker ps -aq)docker rm $(docker ps -aq)
3.掛載
docker run -d --name tomcat -p 8081:8080 -v /home/test:/usr/local/tomcat/webapps tomcat![[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-0zeoy4Sw-1595320958235)(/Users/mac/Documents/csdn草稿/Linux/docker/image-20200721160420767.png)]](/image/aHR0cHM6Ly9pbWctYmxvZy5jc2RuaW1nLmNuLzIwMjAwNzIxMTY0OTMzODk5LnBuZz94LW9zcy1wcm9jZXNzPWltYWdlL3dhdGVybWFyayx0eXBlX1ptRnVaM3BvWlc1bmFHVnBkR2ssc2hhZG93XzEwLHRleHRfYUhSMGNITTZMeTlpYkc5bkxtTnpaRzR1Ym1WMEwxTm9ZWEo1YkdGc1lRPT0sc2l6ZV8xNixjb2xvcl9GRkZGRkYsdF83MA==.png)
4.查看tomcat鏡像下有沒有war包了
![[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-Rgt1Z0s0-1595320958236)(/Users/mac/Documents/csdn草稿/Linux/docker/image-20200721160614429.png)]](/image/aHR0cHM6Ly9pbWctYmxvZy5jc2RuaW1nLmNuLzIwMjAwNzIxMTY0OTUzMzc5LnBuZz94LW9zcy1wcm9jZXNzPWltYWdlL3dhdGVybWFyayx0eXBlX1ptRnVaM3BvWlc1bmFHVnBkR2ssc2hhZG93XzEwLHRleHRfYUhSMGNITTZMeTlpYkc5bkxtTnpaRzR1Ym1WMEwxTm9ZWEo1YkdGc1lRPT0sc2l6ZV8xNixjb2xvcl9GRkZGRkYsdF83MA==.png)
5.瀏覽器查看效果
![[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-LYZTQT1Y-1595320958237)(/Users/mac/Documents/csdn草稿/Linux/docker/image-20200721161401993.png)]](/image/aHR0cHM6Ly9pbWctYmxvZy5jc2RuaW1nLmNuLzIwMjAwNzIxMTY1MTA2Mzc4LnBuZz94LW9zcy1wcm9jZXNzPWltYWdlL3dhdGVybWFyayx0eXBlX1ptRnVaM3BvWlc1bmFHVnBkR2ssc2hhZG93XzEwLHRleHRfYUhSMGNITTZMeTlpYkc5bkxtTnpaRzR1Ym1WMEwxTm9ZWEo1YkdGc1lRPT0sc2l6ZV8xNixjb2xvcl9GRkZGRkYsdF83MA==.png)
