container
container 是一個透過 image 執行的獨立應用環境,裡面包含著基礎的作業系統以及 image 中含帶的功能。
我們所運行的 container 可以是一個 server ,也可以是一個共同開發環境,也可以做到功能模組化。
而透過我們的指令可以讓他持續開啟或是被景執行,甚或是執行完任務就自動刪除。
建立 :
docker images# 首先先檢查 images,確認有哪些 images 以及 image 名稱
docker run -i -t --name <container-name> <image-name> <do what># 透過 image name 啟動 container
其中的 <image-name> 就是要做為此 container 的基底的鏡像檔
而 <do what> 則是給予 container 一啟動時要做的第一件任務。
*常見指令介紹
--name : 給 container 取名,後面接上要取的 container 名字
--rm : container 的功能用完即刪除。
-i : 開啟標準輸入,也就是讓你進入 container 内做文字界面的操作。
-t : 使該 container 持續開啟不關閉。
-d : 令該 container 背景執行。
-p : port mapping,透過這個指令,可以讓本地的 port 跟 container 的 port mapping 起來,這樣當我們訪問本地的 port 就可以訪問到 container 對應的 port。 指令格式 : -p <local-port>:<container-port>
-v : volume mapping,透過這個指令,可以讓本地資料夾跟 container 的資料夾 mapping 起來,這樣可以讓本地檔案跟 container 中的檔案同步。指令格式 : -v <local-Direction>:<container-Direction>
查詢 :
docker ps# 檢視運行中的 container
docker ps -a# 加上 -a 可以檢視所有的,包括停止或關閉的 container
操作 :
關閉 : docker stop <container-name or container-id>
,針對運行中的 container。
啟動 : docker start <container-name or container-id>
,針對關閉中的 container。
刪除 : docker rm <container-name or container-id>
。
進入 : docker exec -it <container-name or container-id> /bin/bash
,開一條 bash 進入 container。
exec
是對容器下指令,這邊以進入為範例
離開 : exit
,離開 container 。
輸出 : docker export <container ID> > <target_file>
載入 : docker import
舉例 :
背景執行一個 mongo server 並且 mapping 27017 port ,以及 mapping 本地的 /mongo_data 資料夾到 container 的 /data/db 資料夾。
docker run -d --name mongo-container -p 27017:27017 –v $(pwd)/mongo_data:/data/db woodlin/mongo:0.0.1
Last updated
Was this helpful?