成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Docker一通百通:10個關鍵命令帶你解鎖90%的容器化任務

云計算 云原生
在這篇文章中,我們將探討每個開發者和系統管理員都應該了解的十個重要的Docker命令,以使他們的容器管理流程更加順暢。從創建和啟動容器,到列出可用的鏡像,再到優雅地停止它們,這些命令將成為有效管理你的Docker環境的基石。

Docker通過引入一種輕量級且高效的打包應用程序及其依賴的方法——容器化,徹底改變了軟件開發和部署的世界。

有了Docker,開發者可以創建被稱為容器的隔離環境,這些容器能在不同平臺上穩定運行,使得構建、部署和擴展應用程序變得更加容易。然而,要真正發揮Docker的力量,掌握有效管理容器的基本命令是必要的。

在這篇文章中,我們將探討每個開發者和系統管理員都應該了解的十個重要的Docker命令,以使他們的容器管理流程更加順暢。從創建和啟動容器,到列出可用的鏡像,再到優雅地停止它們,這些命令將成為有效管理你的Docker環境的基石。

通過掌握這些命令,你將獲得扎實的基礎,以便高效和有效地管理Docker容器。無論你是剛開始接觸Docker的初學者,還是希望提升你的容器管理技能的有經驗的用戶,這篇文章都將提供有價值的見解和實用的例子,幫助你自信地駕馭Docker的世界。讓我們深入挖掘,釋放Docker容器化能力的全部潛力吧。

1、docker run

docker run命令被用于基于Docker鏡像創建并啟動一個新的容器。運行容器的基本語法如下:

docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
  1. OPTIONS:可以用于自定義容器行為的額外選項,例如指定ports、volumes、環境變量等。
  2. IMAGE :用于創建容器的Docker鏡像的名稱。
  3. COMMAND:(可選)在容器內執行的命令。
  4. ARG:(可選)傳遞給容器內命令的參數。

例如,要運行一個基于“ubuntu”鏡像的容器,并在容器內執行ls命令,你可以使用以下命令:

docker run ubuntu ls

這將使用“ubuntu”image 創建一個新的容器并運行ls命令,列出容器文件系統內的文件和目錄。

請注意,如果指定的image 在本地不可用,Docker會在創建容器之前自動從Docker registry拉取鏡像。

2、docker ps

docker ps命令用于列出在你的 Docker 主機上正在運行的容器。它提供的信息包括容器 ID、使用的鏡像、正在執行的命令、狀態和端口映射等。下面是基本的語法:

docker ps [OPTIONS]

默認情況下,docker ps 只顯示正在運行的容器。如果你想查看所有容器,包括已停止或已退出的容器,可以使用-a選項:

docker ps -a

這將顯示你的 Docker 主機上所有容器的列表,以及它們各自的詳細信息。

docker ps命令的輸出包括 CONTAINER ID、IMAGE、COMMAND、CREATED、STATUS、PORTS 和 NAMES 等列。下面是對這些列的簡要解釋:

  • CONTAINER ID:容器的唯一標識符。
  • IMAGE:用于創建容器的鏡像的名稱或 ID。
  • COMMAND:在容器內部執行的命令。
  • CREATED:時間戳,表示容器的創建時間。
  • STATUS:容器的當前狀態(例如,運行中、已停止、已退出)。
  • PORTS:容器與主機系統之間的端口映射。
  • NAMES:容器的自動生成或用戶指定的名稱。

默認情況下,docker ps命令提供了容器的摘要視圖。如果你想要更詳細的信息,可以添加--format選項,后跟一個格式模板。例如:

docker ps --format "ID: {{.ID}}, Image: {{.Image}}, Status: {{.Status}}"

這將僅顯示每個容器的容器 ID、鏡像和狀態信息。請注意,運行docker ps命令需要在你的系統上安裝和運行 Docker。

3、docker stop

docker stop命令用于停止一個或多個正在運行的容器。它向容器的主進程發送一個信號,請求它優雅地停止運行。下面是基本的語法:

docker stop [OPTIONS] CONTAINER [CONTAINER...]
  • OPTIONS:可以用來自定義停止行為的額外選項。例如,你可以使用--time或-t選項指定超時時間,讓容器有更多時間優雅地停止運行,而不是強制終止它。
  • CONTAINER :要停止的容器的名稱或 ID。你可以用空格分隔指定多個容器。

例如,要停止名稱為my-container的容器,你可以使用以下命令:

docker stop my-container

如果你想停止多個容器,可以列出它們的名稱或 ID,用空格分隔:

docker stop container1 container2 container3

當執行docker stop命令時,Docker向容器發送一個 SIGTERM 信號,允許容器內部的進程執行任何必要的清理任務,并優雅地關閉。如果進程在給定的超時時間內(默認為10秒)沒有停止,Docker可以發送一個 SIGKILL 信號來強制終止容器。

4、docker rm

docker rm 命令用于從你的 Docker 主機中刪除一個或多個已停止的容器。它永久刪除指定的容器,并釋放相關的資源。下面是基本的語法:

docker rm [OPTIONS] CONTAINER [CONTAINER...]
  • OPTIONS:可以用來自定義刪除行為的額外選項。例如,你可以使用-f或--force選項來強制刪除正在運行的容器。
  • CONTAINER:要刪除的容器的名稱或 ID。你可以用空格分隔指定多個容器。

例如,要刪除名稱為my-container的容器,你可以使用以下命令:

docker rm my-container

如果你想刪除多個容器,可以列出它們的名稱或 ID,用空格分隔:

docker rm container1 container2 container3

默認情況下,docker rm命令只刪除已停止的容器。如果你想同時刪除正在運行的容器,可以使用-f或--force選項:

docker rm -f container1 container2

請注意,刪除容器將永久刪除它,包括容器內部的任何數據或更改。如果你要刪除正在運行的容器,它會先被停止,然后再被刪除。

此外,你還可以在docker rm命令中使用-v或--volumes選項,如果有的話,一并刪除與容器關聯的卷。

5、docker images

docker images命令用于列出你的 Docker 主機上可用的 Docker 鏡像。它顯示有關鏡像的信息,如repository, tag, image ID、創建日期和大小。下面是基本的語法:

docker images [OPTIONS] [REPOSITORY[:TAG]]
  • OPTIONS:可以用來自定義輸出或過濾鏡像的額外選項。例如,你可以使用--format選項來指定輸出的格式模板,或者使用-a或--all選項來顯示所有鏡像,包括中間鏡像層。
  • REPOSITORY:(可選)鏡像的倉庫名稱。
  • TAG:(可選)鏡像的標簽。

默認情況下,docker images命令列出你的 Docker 主機上所有可用的鏡像。例如:

docker images

這將顯示一個鏡像表格,包括 REPOSITORY、TAG、IMAGE ID、CREATED 和 SIZE 等列。REPOSITORY 和 TAG 組合在一起形成鏡像的唯一標識符。

如果你想根據倉庫或標簽對鏡像進行過濾,可以提供倉庫和/或標簽名稱作為參數。例如,列出來自特定倉庫的鏡像:

docker images my-repo

列出具有特定標簽的鏡像:

docker images my-repo:my-tag

你還可以組合選項來進一步自定義輸出。例如,顯示包括中間層鏡像在內的所有鏡像,并使用自定義格式進行輸出:

docker images -a --format "table {{.ID}}\t{{.Repository}}\t{{.Tag}}"

這將以表格格式顯示鏡像,只顯示 image ID, repository和tag 信息。

6、docker rmi

docker rmi命令用于從你的 Docker 主機中刪除一個或多個 Docker 鏡像。它會永久刪除你本地鏡像緩存中指定的鏡像。下面是基本的語法:

docker rmi [OPTIONS] IMAGE [IMAGE...]
  • OPTIONS:可以用來自定義刪除行為的額外選項。例如,你可以使用-f或--force選項來強制刪除鏡像,即使它正被運行的容器使用。
  • IMAGE:要刪除的鏡像的名稱或 ID。你可以用空格分隔指定多個鏡像。

例如,要刪除名稱為my-image:latest的鏡像,你可以使用以下命令:

docker rmi my-image:latest

如果你想刪除多個鏡像,可以列出它們的名稱或 ID,用空格分隔:

docker rmi image1 image2 image3

默認情況下,docker rmi命令只會刪除沒有被任何容器使用的鏡像。如果你嘗試刪除當前被一個或多個容器使用的鏡像,Docker 會報錯。在這種情況下,你可以使用-f或--force選項強制刪除鏡像,即使它正在使用中:

docker rmi -f my-image:latest

請注意,刪除鏡像將會永久從你的本地鏡像緩存中刪除它。如果你將來需要再次使用該鏡像,你需要從 Docker 注冊表中拉取它,或者使用 Dockerfile 重新構建它。

此外,你還可以在docker rmi命令中使用--no-prune選項,如果存在未標記的父鏡像,則防止自動刪除它們。

7、docker build

docker build命令用于根據 Dockerfile 構建一個 Docker 鏡像。它允許你定義創建自定義鏡像所需的指令和依賴關系。下面是基本的語法:

docker build [OPTIONS] PATH | URL | -
  • OPTIONS:可以用來自定義構建過程的額外選項。一些常用的選項包括-t或--tag用于指定鏡像的名稱和可選標簽,-f或--file用于指定 Dockerfile 的位置,--build-arg用于傳遞構建時變量給 Dockerfile。
  • PATH | URL | -:指向包含 Dockerfile 的目錄的路徑,Git 倉庫的 URL,或者“-”表示從標準輸入構建。

例如,要使用當前目錄中的 Dockerfile 構建一個鏡像,并將其標記為my-image:latest,你可以使用以下命令:

docker build -t my-image:latest .

這里的“.”表示 Dockerfile 在當前目錄中。

如果你的 Dockerfile 存在于其他位置,你可以使用-f選項指定其路徑:

docker build -t my-image:latest -f /path/to/Dockerfile .

在構建過程中,Docker 讀取 Dockerfile 中的指令,執行每個步驟,并根據需要創建中間鏡像。最終生成的鏡像將會被打上指定的名稱和可選的標簽。

你可以在 Dockerfile 中定義額外的指令,例如復制文件、安裝依賴項、設置環境變量或暴露端口,以根據你的需求自定義鏡像。

8、docker exec

docker exec命令用于在正在運行的 Docker 容器內執行命令。它允許你以交互或分離模式運行命令。下面是基本的語法:

docker exec [OPTIONS] CONTAINER COMMAND [ARG...]
  • OPTIONS:可以用來自定義執行行為的額外選項。一些常用的選項包括-i或--interactive用于保持 STDIN 開放以進行交互式命令,-t或--tty用于分配一個偽終端,以及-d或--detach用于在后臺運行命令。
  • CONTAINER :要在其中執行命令的容器的名稱或 ID。
  • COMMAND:要在容器內部執行的命令。
  • ARG:(可選)傳遞給容器內部命令的參數。

例如,要在名為my-container的容器內執行ls命令,你可以使用以下命令:

docker exec my-container ls

這將在指定的容器內運行“ls”命令,并顯示文件和目錄的列表。

如果你想運行一個交互式命令,比如在容器內啟動一個 shell,你可以同時使用-it選項:

docker exec -it my-container bash

這將在容器內啟動一個交互式的 shell 會話,允許你交互地執行多個命令。

請注意,容器必須處于運行狀態才能使用docker exec命令。如果你需要在已停止或已退出的容器中執行命令,你可以先使用docker start命令啟動容器,然后再使用docker exec運行命令。

9、docker pull

docker pull命令用于從 Docker 注冊表(例如 Docker Hub)下載 Docker 鏡像。它會獲取指定的鏡像或鏡像,并將它們保存到你的本地鏡像緩存中。下面是基本的語法:

docker pull [OPTIONS] IMAGE[:TAG]
  • OPTIONS:可以用來自定義下載過程的額外選項。一些常用的選項包括--all-tags用于拉取鏡像的所有可用標簽,--platform用于指定要拉取的鏡像的平臺,以及--quiet用于抑制進度輸出。
  • IMAGE:要從 Docker 注冊表中拉取的鏡像的名稱。它可以是“倉庫/鏡像”的格式或“倉庫/鏡像:標簽”的格式。如果未指定標簽,默認使用latest。

例如,要從 Docker Hub 拉取最新版本的“ubuntu”鏡像,你可以使用以下命令:

docker pull ubuntu

如果你想拉取特定標簽的鏡像版本,可以指定標簽:

docker pull ubuntu:20.04

指定的鏡像將會從 Docker 注冊表中下載,并保存到你的本地鏡像緩存中。一旦鏡像被拉取,你就可以使用它來創建和運行在你的 Docker 主機上的容器。

10、docker push

docker push命令用于將 Docker 鏡像上傳到 Docker 注冊表(例如 Docker Hub 或私有注冊表)。它允許你與他人共享你本地構建或修改的鏡像。下面是基本的語法:

docker push [OPTIONS] NAME[:TAG]
  • OPTIONS:可以用來自定義上傳過程的額外選項。一些常用的選項包括--all-tags用于上傳鏡像的所有標簽,--disable-content-trust用于跳過內容信任驗證,以及--quiet用于抑制進度輸出。
  • NAME:要上傳的鏡像的名稱。它應該包括倉庫和鏡像名。例如,“用戶名/倉庫名:鏡像名”。
  • TAG:(可選)要上傳的鏡像的標簽。如果未指定標簽,默認使用latest標簽。

在推送鏡像之前,你需要確保已經通過身份驗證登錄到 Docker 注冊表。你可以使用docker login命令登錄到注冊表,提供用戶名、密碼和注冊表的 URL(如果需要)。

例如,要將名為my-image的鏡像與“latest”標簽推送到 Docker Hub,假設你已經登錄到 Docker Hub,你可以使用以下命令:

docker push username/my-image:latest

指定的鏡像將會被上傳到 Docker 注冊表,并對他人可供下載和使用。

責任編輯:武曉燕 來源: 今日頭條
相關推薦

2019-12-31 10:24:48

Class 類JVMJava

2010-05-12 14:24:41

統一通信系統

2012-10-18 13:48:31

統一通信UC

2010-05-13 23:34:39

統一通信環境

2010-05-21 14:02:14

統一通信技術系統

2010-05-25 16:10:49

統一通信中信

2010-05-21 10:58:18

2010-05-24 10:53:48

2010-09-07 16:34:31

統一通信sip

2010-05-14 16:39:47

移動統一通信

2023-04-10 11:18:24

GPT模型

2009-08-06 11:49:37

統一通信市場軟件驅動市場

2010-05-14 10:07:38

統一通信平臺

2010-05-12 15:05:43

2010-05-19 15:35:32

2012-04-11 10:58:13

統一通信

2010-05-24 09:34:02

思科統一通信

2010-05-21 13:18:27

統一通信系統服務

2010-05-13 23:39:47

統一通信市場

2010-05-14 15:05:02

統一通信工具
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 日韩欧美在线视频 | 久久久久久久亚洲精品 | 西西裸体做爰视频 | 一区二区三区国产 | 人人插人人 | 欧美日韩国产精品一区 | 亚洲一区二区av | 中文字幕日韩欧美 | 中文字幕精品一区 | 久久亚 | 精品欧美一区二区在线观看 | 97精品久久 | 五月天国产在线 | 色综合久久久 | 香蕉一区| 国产三级精品视频 | 国产高清视频一区 | 亚洲成人福利在线观看 | 欧美精品一区二区三区在线 | 日本在线免费视频 | 黄色三级在线播放 | 欧美久久精品 | 欧美精品在线播放 | 中文字幕高清 | 国产精品久久久久久中文字 | 久久精品国产久精国产 | 97伦理 | 欧美美女爱爱 | 国产成人精品免高潮在线观看 | 日韩成人一区 | 久草在线中文888 | 国产乱码一二三区精品 | 亚洲午夜视频 | 在线免费小视频 | 欧美成年黄网站色视频 | 久久一区视频 | 紧缚调教一区二区三区视频 | 国产精品一区二区av | 99精品免费久久久久久久久日本 | 欧美精品久久久久久 | 国产精品久久久久久一区二区三区 |