要啟動一個新的容器,我們使用 **`docker run`** 命令,後跟鏡像名稱。基本語法如下: ```Bash docker run [選項] 鏡像 [COMMAND] [ARG...] ``` 例如,要運行官方的 Nginx 鏡像,我們可以使用: ```Bash docker run -d - ...
要啟動一個新的容器,我們使用 docker run
命令,後跟鏡像名稱。基本語法如下:
docker run [選項] 鏡像 [COMMAND] [ARG...]
例如,要運行官方的 Nginx 鏡像,我們可以使用:
docker run -d -p 8080:80 nginx
這會啟動一個新的容器,並將主機的埠 8080 映射到容器的埠 80。
列出容器
要列出所有正在運行的容器,請使用 docker ps
命令。要查看所有容器(包括已停止的容器),請使用 -a
標誌:
docker container ls -a
訪問容器
要訪問正在運行的容器的 shell,請使用 docker exec
命令:
docker exec -it CONTAINER_ID bash
將 CONTAINER_ID
替換為所需容器的 ID 或名稱。您可以在 docker ps
的輸出中找到它。
停止容器
要停止運行中的容器,請使用 docker stop
命令,後跟容器 ID 或名稱:
docker container stop CONTAINER_ID
刪除容器
停止容器後,我們可以使用 docker rm
命令,後跟容器 ID 或名稱,將其刪除:
docker container rm CONTAINER_ID
要在退出時自動刪除容器,請在運行容器時添加 --rm
標誌:
docker run --rm IMAGE
Docker Compose
Docker Compose 是一個用於定義和運行多容器 Docker 應用程式的工具。它允許您使用一個簡單的名為 docker-compose.yml
的 YAML 文件創建、管理和運行應用程式。此文件描述了你的應用程式的服務、網路和捲,只需使用一個命令就可以輕鬆運行和管理你的容器。
使用 Docker Compose 的一些好處包括:
- 簡化容器管理: Docker Compose 允許您在一個地方定義和配置所有服務、網路和捲,使其易於管理和維護。
- 可重覆構建: 共用你的
docker-compose.yml
文件,以確保他人運行相同的環境和服務。 - 版本支持: Docker Compose 文件可以進行版本控制,以便更容易地與不同版本的 Docker Compose 工具進行相容。
創建 Docker Compose 文件:
要創建一個 docker-compose.yml
文件,首先指定您想要使用的 Docker Compose 版本,然後是您想要定義的服務。下麵是一個基本的 docker-compose.yml
文件示例:
version: "3.9"services: web: image: nginx:latest ports: - "80:80" db: image: mysql:latest environment: MYSQL_ROOT_PASSWORD: mysecretpassword
在這個示例中,我們指定了兩個服務:一個運行最新版本 nginx 鏡像的 Web 伺服器(web
),以及運行 MySQL 的資料庫伺服器(db
)。Web 伺服器將其埠 80 暴露給主機,而資料庫伺服器則設置了根密碼的環境變數。
運行 Docker Compose:
要運行你的 Docker Compose 應用程式,只需導航到包含你的 docker-compose.yml
文件的目錄,並運行以下命令:
docker-compose up
Docker Compose 將讀取文件並按指定的順序啟動定義的服務。
其他有用的命令:
docker-compose down
:停止並刪除在docker-compose.yml
文件中定義的所有正在運行的容器、網路和捲。docker-compose ps
:列出在docker-compose.yml
文件中定義的所有容器的狀態。docker-compose logs
:顯示在docker-compose.yml
文件中定義的所有容器的日誌。docker-compose build
:構建在docker-compose.yml
文件中定義的所有鏡像。
這是一個關於 Docker Compose 的簡要介紹!瞭解更多信息,請查看官方的 Docker Compose 文檔。
運行時配置選項
運行時配置選項允許你在運行 Docker 容器時自定義容器的行為和資源。這些選項對於管理容器的資源、安全性和網路非常有幫助。以下是一些常用的運行時配置選項的簡要概述:
資源管理
-
CPU: 你可以使用
cpus
和cpu-shares
選項來限制容器的 CPU 使用率。cpus
選項限制容器可以使用的 CPU 核心數量,而cpu-shares
選項為容器分配相對的 CPU 時間份額。docker run --cpus=2 --cpu-shares=512 your-image
-
記憶體: 你可以使用
memory
和memory-reservation
選項來限制和預留容器的記憶體。這可以幫助防止容器占用過多的系統資源。docker run --memory=1G --memory-reservation=500M your-image
安全性
-
用戶: 預設情況下,容器作為
root
用戶運行。為了增加安全性,你可以使用user
選項將容器作為其他用戶或 UID 運行。docker run --user 1000 your-image
-
只讀根文件系統: 為了防止容器對文件系統進行不必要的更改,你可以使用
read-only
選項將根文件系統掛載為只讀。docker run --read-only your-image
網路
-
發佈埠: 你可以使用
publish
(或p
)選項將容器的埠發佈到主機系統上。這允許外部系統訪問容器化的服務。docker run -p 80:80 your-image
-
主機名和 DNS: 你可以使用
hostname
和dns
選項來自定義容器的主機名和 DNS 設置。docker run --hostname=my-container --dns=8.8.8.8 your-image
包括這些運行時配置選項將允許你有效地管理容器的資源、安全性和網路需求。有關可用運行時配置選項的完整列表,請參閱 Docker 的官方文檔。
最後
為了方便其他設備和平臺的小伙伴觀看往期文章,鏈接奉上:
公眾號 Let us Coding
,牛客,知乎,開源中國,CSDN,思否,掘金,InfoQ,簡書,博客園,慕課,51CTO,helloworld,騰訊開發者社區,阿裡開發者社區
看完如果覺得有幫助,歡迎點贊、收藏和關註