1 查看是否安裝docker
要檢查Ubuntu是否安裝了Docker,可以使用以下幾種方法:
方法1:使用 docker --version
命令
docker --version
如果Docker已安裝,輸出會顯示Docker的版本信息,例如:
Docker version 20.10.10, build b485636
如果Docker未安裝,你將看到類似以下的錯誤信息:
Command 'docker' not found, but can be installed with:
sudo apt install docker.io
方法2:使用 which docker
命令
which docker
如果Docker已安裝,此命令會顯示Docker可執行文件的路徑,例如:
/usr/bin/docker
如果Docker未安裝,命令不會產生輸出。
方法3:檢查Docker服務狀態
systemctl status docker
如果Docker已安裝且正在運行,你將看到服務的詳細狀態信息。如果Docker未安裝或未運行,輸出將類似于:
Unit docker.service could not be found.
方法4:檢查已安裝的包
你還可以檢查系統中是否安裝了Docker包。
檢查 docker
包
dpkg -l | grep docker
或
檢查 docker.io
包
dpkg -l | grep docker.io
如果Docker已安裝,你會看到與Docker相關的包信息,例如:
ii docker-ce 5:20.10.10~3-0~ubuntu-focal amd64 Docker: the open-source application container engine
ii docker-ce-cli 5:20.10.10~3-0~ubuntu-focal amd64 Docker CLI: the open-source application container engine
安裝Docker
如果你的系統中沒有安裝Docker,可以使用以下步驟安裝Docker。
查詢版本號
snap info docker
完整步驟如下:
使用 apt
包管理器可以直接安裝指定版本的 docker.io
包。雖然這種方法更簡單,但 docker.io
包可能不是官方的最新版本。以下是如何使用 apt
安裝特定版本的 docker.io
:
1. 更新包信息
sudo apt update
2. 查找可用的 Docker 版本
使用 apt-cache
查看可用的 docker.io
版本:
apt-cache madison docker.io
這將列出所有可用的 docker.io
版本。例如:
docker.io | 20.10.17-0ubuntu1~20.04.1 | http://archive.ubuntu.com/ubuntu focal-updates/universe amd64 Packagesdocker.io | 20.10.12-0ubuntu2~20.04.1 | http://archive.ubuntu.com/ubuntu focal-updates/universe amd64 Packages...
3. 安裝特定版本的 Docker
找到所需版本后,使用以下命令安裝,例如20.10.17:
sudo apt install docker.io=20.10.21-0ubuntu1~18.04.3
4. 防止自動升級
為了防止 docker.io
包在系統升級時自動升級到新版本,可以將其保持在當前版本:
sudo apt-mark hold docker.io
5. 啟動并啟用 Docker 服務
sudo systemctl start docker
sudo systemctl enable docker
- 啟動服務:
start
命令會立即啟動服務,但不會配置其在系統重啟后自動啟動。 - 啟用服務:
enable
命令會配置服務在系統啟動時自動啟動,但不會立即啟動服務。
6. 驗證安裝
docker --version
docker官方網站寄了,換國內鏡像網站,跟pip,conda一樣
vi /etc/docker/daemon.json
{
“registry-mirrors”: [“https://ustc-edu.cn.mirror.aliyuncs.com/”,“https://ccr.ccs.tencentyun.com/”,“https://docker.m.daocloud.io/”]
}
systemctl daemon-reload
systemctl restart docker
容器重啟策略
當Ubuntu虛擬機關機或重啟后,原先運行在Docker中的容器會停止。如果你重新啟動虛擬機并運行 docker ps
命令,你將看不到那些原先運行的容器,因為它們已經停止。
但是,這些容器并沒有被刪除,你可以通過 docker ps -a
命令查看所有(包括停止的)容器。
重新啟動容器
如果你希望在系統重啟后自動重新啟動容器,可以為容器設置重啟策略。Docker 提供了幾種重啟策略,你可以在運行容器時通過 --restart
選項來設置:
- no:默認值。容器退出時不會自動重啟。
- on-failure:如果容器由于錯誤退出(非零退出狀態),則自動重啟。
- always:無論退出狀態如何,始終自動重啟。
- unless-stopped:始終自動重啟,除非容器是手動停止的。
示例
使用 --restart
選項設置容器的重啟策略:
docker run \-e RABBITMQ_DEFAULT_USER=itheima \-e RABBITMQ_DEFAULT_PASS=123321 \-v mq-plugins:/plugins \--name mq \--hostname mq \-p 15672:15672 \-p 5672:5672 \--network hmall \--restart always \-d \rabbitmq:3.8-management
在上面的命令中,--restart always
參數確保容器在Docker守護進程啟動時(例如系統重啟后)自動重啟。
啟動和停止 Docker 容器
當系統重啟后,使用以下命令來手動啟動和停止容器:
-
查看所有容器,包括已停止的:
docker ps -a
-
啟動一個已停止的容器:
docker start <container_name_or_id>
-
停止一個運行中的容器:
docker stop <container_name_or_id>
進一步說明
使用重啟策略可以確保容器在系統重啟后自動恢復運行,提供了一種簡單的方法來管理容器的高可用性,特別是對于需要持續運行的服務。
的容器**:
docker start <container_name_or_id>
-
停止一個運行中的容器:
docker stop <container_name_or_id>
進一步說明
使用重啟策略可以確保容器在系統重啟后自動恢復運行,提供了一種簡單的方法來管理容器的高可用性,特別是對于需要持續運行的服務。