Docker常用命令操作指南-1
- 一、Docker鏡像相關命令
- 1.1 搜索鏡像(docker search)
- 1.2 拉取鏡像(docker pull)
- 1.3 查看本地鏡像(docker images)
- 1.4 刪除鏡像(docker rmi)
- 二、Docker容器相關命令
- 2.1 運行容器(docker run)
- 2.2 查看容器(docker ps)
- 2.3 停止與啟動容器(docker stop/docker start)
- 2.4 進入容器(docker exec/docker attach)
- 2.5 刪除容器(docker rm)
- 三、Docker倉庫相關命令
- 3.1 登錄與登出倉庫(docker login/docker logout)
- 3.2 推送鏡像到倉庫(docker push)
- 四、Docker其他實用命令
- 4.1 查看Docker系統信息(docker info)
- 4.2 查看容器日志(docker logs)
- 總結
在容器化技術飛速發展的今天,Docker已成為開發者和運維人員不可或缺的工具,而熟練掌握Docker的基礎命令,是高效使用Docker進行應用開發、部署和管理的基石。本文我將圍繞Docker鏡像、容器、倉庫等核心操作,并結合相關示例,帶你深入了解Docker基礎命令的使用方法與技巧。
一、Docker鏡像相關命令
鏡像作為Docker的核心概念之一,是創建容器的基礎。常用的鏡像操作命令如下:
1.1 搜索鏡像(docker search)
當我們需要獲取某個應用的鏡像時,可以使用 docker search
命令在Docker Hub等鏡像倉庫中搜索鏡像。命令格式如下:
docker search [OPTIONS] TERM
例如,搜索Nginx鏡像:
docker search nginx
執行該命令后,會列出Nginx相關鏡像的信息,包括鏡像名稱、描述、星級評分、官方與否等。其中常用選項 -s
可用于按星級評分篩選鏡像,如 docker search -s 5 nginx
表示搜索評分5星及以上的Nginx鏡像。
1.2 拉取鏡像(docker pull)
找到合適的鏡像后,使用 docker pull
命令將其下載到本地。命令格式為:
docker pull [OPTIONS] NAME[:TAG]
NAME
為鏡像名稱,TAG
是鏡像的標簽,用于標識鏡像的版本,不指定 TAG
時默認拉取 latest
標簽的鏡像。例如,拉取最新版的Nginx鏡像:
docker pull nginx
若要拉取特定版本,如Nginx 1.23.3版本:
docker pull nginx:1.23.3
1.3 查看本地鏡像(docker images)
使用 docker images
命令可以查看本地已下載的鏡像列表,命令格式:
docker images [OPTIONS] [REPOSITORY[:TAG]]
執行后會顯示鏡像的倉庫名、標簽、鏡像ID、創建時間和大小等信息。例如,只查看Nginx相關鏡像:
docker images nginx
常用選項 -q
可僅顯示鏡像ID,方便后續操作,如 docker images -q nginx
。
1.4 刪除鏡像(docker rmi)
當鏡像不再需要時,可使用 docker rmi
命令刪除。格式為:
docker rmi [OPTIONS] IMAGE [IMAGE...]
IMAGE
可以是鏡像ID、鏡像名:標簽等。比如刪除本地的Nginx鏡像(通過鏡像ID刪除):
docker rmi <鏡像ID>
若鏡像被容器使用,直接刪除會報錯,可先停止并刪除相關容器,或使用 -f
強制刪除,如 docker rmi -f nginx
。
二、Docker容器相關命令
容器是鏡像的運行實例,容器的常見操作命令如下:
2.1 運行容器(docker run)
docker run
是最常用的命令之一,用于創建并運行一個容器,格式如下:
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
其中 OPTIONS
有很多實用參數:
-d
:以后臺守護進程模式運行容器;-p
:端口映射,格式為宿主機端口:容器端口
,如docker run -d -p 8080:80 nginx
將宿主機8080端口映射到容器80端口;-v
:數據卷掛載,實現宿主機與容器間的數據共享,如docker run -v /host/data:/container/data nginx
;--name
:為容器指定一個名稱 ,方便后續管理,如docker run --name my-nginx nginx
。
例如,以守護進程模式運行一個Nginx容器,并映射端口:
docker run -d -p 80:80 --name my-nginx nginx
2.2 查看容器(docker ps)
使用 docker ps
命令查看正在運行的容器,格式:
docker ps [OPTIONS]
常用選項:
-a
:顯示所有容器(包括已停止的);-l
:顯示最近創建的容器;-q
:僅顯示容器ID。
如查看所有容器:
docker ps -a
2.3 停止與啟動容器(docker stop/docker start)
停止正在運行的容器使用 docker stop
命令,格式為 docker stop [OPTIONS] CONTAINER [CONTAINER...]
,例如停止名為 my-nginx
的容器:
docker stop my-nginx
啟動已停止的容器用 docker start
,格式類似,如 docker start my-nginx
。此外,docker restart
命令可用于重啟容器,相當于先停止再啟動。
2.4 進入容器(docker exec/docker attach)
進入正在運行的容器有兩種方式:
docker exec
:在容器中執行一個新的命令,并進入交互模式,推薦使用。格式為docker exec -it CONTAINER COMMAND
,如進入Nginx容器的Shell:
docker exec -it my-nginx bash
docker attach
:直接進入容器的標準輸入、輸出和錯誤輸出流,當多個窗口同時attach時會產生干擾,使用較少。
2.5 刪除容器(docker rm)
刪除已停止的容器使用 docker rm
命令,格式為 docker rm [OPTIONS] CONTAINER [CONTAINER...]
,如刪除 my-nginx
容器:
docker rm my-nginx
若要刪除正在運行的容器,可使用 -f
強制刪除 ,即 docker rm -f my-nginx
。
三、Docker倉庫相關命令
Docker倉庫用于存儲鏡像,與倉庫交互的常用命令如下:
3.1 登錄與登出倉庫(docker login/docker logout)
登錄Docker Hub等倉庫使用 docker login
命令,格式:
docker login [OPTIONS] [SERVER]
執行后按提示輸入用戶名和密碼即可登錄。登出使用 docker logout
,如 docker logout
。
3.2 推送鏡像到倉庫(docker push)
將本地鏡像推送到倉庫使用 docker push
命令,格式為 docker push NAME[:TAG]
,但需要先確保鏡像名稱符合倉庫的命名規范(通常包含倉庫地址、用戶名等信息)。例如,將本地鏡像推送到Docker Hub:
docker push username/repository:tag
四、Docker其他實用命令
4.1 查看Docker系統信息(docker info)
docker info
命令用于查看Docker系統的詳細信息,包括磁盤使用、鏡像數量、容器數量、存儲驅動等。執行 docker info
即可查看相關內容。
4.2 查看容器日志(docker logs)
通過 docker logs
命令查看容器的運行日志,格式為 docker logs [OPTIONS] CONTAINER
。常用選項 -f
可實時跟蹤日志輸出,如查看Nginx容器日志:
docker logs -f my-nginx
總結
本文我簡單介紹了Docker在鏡像、容器、倉庫等方面的基礎命令,涵蓋了從鏡像獲取、容器創建運行到倉庫交互等基礎核心操作。以后我還將深入介紹 Docker 常用的其他命令,敬請期待吧~
若這篇內容幫到你,動動手指支持下!關注不迷路,干貨持續輸出!
ヾ(′? ˋ)ノヾ(′? ˋ)ノヾ(′? ˋ)ノヾ(′? ˋ)ノヾ(′? ˋ)ノ