Docker 入門:容器

Docker 入門:容器

容器看着像機器,實際是進程,是一個運行時程序。python

要操做一個 Docker 容器,只須要執行 docker container 命令。 能夠經過 help 查看nginx

run 運行容器

基礎使用:web

docker container run nginx
複製代碼

Docker 會到本地區查找有沒有叫作 nginx 的鏡像(鏡像這篇暫不涉及)。若是沒有,會在 Docker Hub 官方倉庫當中下載。docker

Docker 每條命令裏都有可選參數。如下是 run 常常使用的一些可選參數:shell

-p / --publish編輯器

開放端口。好比開放容器的 80 端口和 22 端口,分別映射到宿主機的 8000 和 5000 端口。nginx 必需要開放端口才可使用。ui

docker container -p 8000:80 -p 5000:22 nginx
複製代碼

-d / --detachspa

後臺運行,打印容器 ID。命令行

沒有後臺運行時,會顯示 nginx 的日誌:調試

後臺運行之後,打印容器 ID 後能夠接着作其餘的事:

--name

給容器取一個名字,更容易記得住。 默認容器名稱是隨機生成的。

-e / --env

給容器添加環境變量。

-i, --interactive

開啓交互式模式。

-t / --tty

開啓 tty。

-i 和 -t 常常組合在一塊兒使用,能夠在容器中輸入 shell 命令。 好比經過 Docker 安裝一個 python 環境,而後在命令行運行 python:

docker container run -it python:3.7-alpine python
複製代碼

運行之後,能夠直接獲取 python 終端進行調試:

使用交互式進入已經在運行的容器:

docker container exec -it container_id
複製代碼

--rm

退出容器時自動刪除容器,一般用在調試過程當中。

-v / --volume

添加 volume 數據卷(數據卷是宿主機和容器之間的數據通道,這裏暫不討論。)

logs 日誌查看

查看某個容器運行的日誌。

docker container logs container_id
複製代碼

stop 命令

中止容器運行

docker container stop container_id(name)
複製代碼

rm 命令

刪除容器

docker container rm container_id(name)
複製代碼

ls 查看容器

基礎使用:

docker container ls
複製代碼

能夠選擇的參數:

-a / --all

展現全部的容器,包含運行的和沒有運行的。

-q / --quiet

只顯示 IDs。

-f / --filter

篩選容器。

列舉全部退出的容器,並顯示 ID:

docker container ls -aq -f "status=exited"
複製代碼

刪除全部退出的容器:

docker container rm $(docker container ls -aq -f "status=exited") --force
複製代碼

更多文章關注公號:雨哥寫 python

相關文章
相關標籤/搜索