1. 程式人生 > 實用技巧 >【訓練】9.12 訓練賽

【訓練】9.12 訓練賽

安裝與解除安裝

指令碼安裝

使用指令碼安裝 docker 極其簡單,在終端輸入以下命令,等待完成

curl -sSL https://get.docker.com | sh

確認是否成功

sudo docker --version  

解除安裝

apt-get remove docker-ce docker-ce-cli  # 解除安裝軟體  
apt-get remove –purge docker-ce docker-ce-cli # 解除安裝並清除配置  

常用命令

啟動和關閉 docker 服務

sudo service docker start# 啟動Docker服務
sudo service docker stop# 關閉Docker服務

重啟 docker 並常駐服務

sudo systemctl restart docker.service 
sudo systemctl enable docker.service

為當前使用者增加許可權

sudo groupadd docker
sudo usermod -aG docker userName # 此處 userName 替換為你的使用者名稱

檢視 docker 基本資訊

包括視窗、映象數量和執行情況,安裝目錄等

sudo docker info 

映象

檢視所有下載映象的狀態

sudo docker images 

搜尋映象

映象的名字通常由使用者名稱/映象名構成, 無使用者名稱的為官方認證映象。

docker search ubuntu 

獲取映象

sudo docker pull ubuntu # 使用 ubuntu:版本號 可以指定要下載的版本,預設為最新版本latest 

刪除映象

sudo docker rmi ubuntu # 需先刪除映象對應的容器 

刪除所有映象

sudo docker rmi $(docker images -q) # 需先刪除映象對應的容器 

容器

檢視所有容器的狀態

sudo docker ps -a

執行容器

sudo docker run --rm ubuntu echo "Hello from docker"   # rm 引數:容器執行結束之後就自動刪除 

後臺執行容器

sudo docker run -d --name=ubuntu ubuntu  # name引數: 為容器指定 name

互動式執行容器

sudo docker run -it --name=ubuntu  ubuntu
# it引數:{
#           i:即使未連線,互動式仍保持標準輸入(鍵盤)開啟  
#           t: 分配一個偽終端
# }
# name引數: 為容器指定 name

檢視執行的詳細引數

sudo docker run --help

停止容器

sudo docker stop ubuntu

進入停止的容器

sudo docker start ubuntu
# attach命令只能在本機開發時使用
# 因為退出會造成容器關閉,某臺機器故障會造成所有人阻塞
sudo docker attach ubuntu 
# 該命令可用於生產環境;退出不關閉,無阻塞                              
sudo docker exec -it ubuntu /bin/bash

刪除容器

sudo docker rm ubuntu # 容器不能處於執行狀態

刪除所有停止的容器

sudo docker rm -v $(docker ps -a -q -f status=exited)

檢視指定容器 ip

docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' container_name_or_id

檢視所有容器 ip

docker inspect --format='{{.Name}} - {{range.NetworkSettings.Networks}}{{.IPAddress}}{{end}}' $(docker ps -aq)

目錄掛載

掛載宿主機目錄 /test 到容器的 /soft 目錄

sudo docker run -it -v /test:/soft ubuntu 
# 掛載時所有目錄都應使用絕對目錄
# 宿主機目錄 /test 如果不存在,則會自動生成,
# 宿主機目錄不填寫 如 $ docker run -it -v /test2 ubuntu  則預設掛載在宿主機/var/lib/docker/volumes/下新建的目錄下

容器自動重啟

在因外界原因導致容器停止後,docker 自動重啟容器

sudo docker run -it --restart always ubuntu 

容器追加啟動引數

在實際生產應用中,一個容器可能會連續執行數月甚至數年,後期由於需求變動,可能需要在容器啟動時新增新的啟動引數。此時,相比新建容器更好的解決方案是
使用 docker 提供的 docker container update

docker container update --restart=always ubuntu # 為 ubuntu 追加自動重啟引數