天天看點

進入docker容器指令_Docker之鏡像和容器基礎操作指令

進入docker容器指令_Docker之鏡像和容器基礎操作指令

本篇文章是介紹鏡像 image 和 容器 container 的基礎操作指令,後直接使用英文 image 和 container 替代。

首先來講解釋一下 image 和 container 的關系。

image 概念

image 就是我們從 docker 遠端倉庫裡 pull 下來的系統,Ubuntu 也好, Python 也好,背後都是一個最精簡的 Linux 作業系統在支援,這些都是鏡像。

即便你把你的代碼寫了進去,隻要這個 image 沒有運作起來,就還是一個 image。

container 概念

當我們把上述 image 運作起來,這個 image 就成了一個 container。

官方解釋就是 image 是 建構時(

build-time

)結構,container 是 運作時(

run-time

)結構。

好,接下來介紹一下

image

container

的具體操作指令。

image 操作指令

檢視本地所有 pull 下來的鏡像:
docker image ls
           
拉取一個 Ubuntu 鏡像:
docker image pull ubuntu:latest
           
拉取一個 Python 鏡像:
docker image pull python:3.6
           

在遠端倉庫,每一個鏡像都有 對應的鏡像名字和标簽(tag),比如 ubuntu 和 latest。

如不指定标簽,會預設 pull 标簽為 latest 的鏡像。

使用 -a 參數 pull 所有指定鏡像:
docker image pull -a python
           
在遠端倉庫搜尋相關鏡像:
docker search ubuntu
           
檢視某鏡像标簽、id、分層等各種資訊:
docker image inspect ubuntu:latest
           
通過 IMAGE ID 删除某個 image:
docker image rm ed21b7a8aee9
           

上述中的 ed21b7a8aee9 就是某鏡像的 IMAGE ID,可通過

docker image ls

檢視 image 的第一列擷取。

删除所有 image:
docker image rm $(docker image ls -q) -f
           

container 操作指令

檢視所有容器:
docker container ls
           
運作某個 image 進入該 container:
docker container run -it ubuntu:latest /bin/bash
           
運作某個 imag 并使其在背景運作:
docker container run -itd ubuntu:latest /bin/bash
           
進入某個 container:
docker container ls #檢視并選擇某個 container id

#根據 container id 進入該 container
docker container exec -it 039d1fb17ec4 /bin/bash 
           
退出某個 container:
exit
#或者
ctrl + p + q	#(按住ctrl+p, ctrl 不放 p 放開, 再按q)
           

注意: 如果你是運作并進入某個 container ,輸入 exit 退出系統後,該 container 也會停止。

如果你是進入一個運作中的 container ,輸入 exit 隻是退出界面,container 會在背景運作。

而不管什麼情況,ctrl + p + q 操作,都隻是退出界面,不會停止 container。

停止 container 運作:
docker container stop 90046a96e675 #這串代碼是 CONTAINER ID
           
删除某個 container:
docker container rm 90046a96e675
           
以 name 字段運作 container:
docker container run --name hunter -itd ubuntu:latest /bin/bash
           
使用 name 字段進入 container:
docker container exec -it hunter /bin/bash
           
使用 name 字段停止 container:
docker container stop hunter
           
使用 name 字段重新運作 container:
docker container start hunter
           
列出包括已經停止的 container:
docker container ls -a
           
删除所有 container:
docker container rm $(docker container ls -aq) -f
           
檢視 container 詳細資訊:
docker container inspect 90046a96e675
           

如果 container 有 name 字段,也可以使用 name 字段。

PS:本文為本人原創,首發于 CSDN 部落格,文章位址:Docker系列筆記 之鏡像和容器釋義及基礎操作指令