跟我一起學docker(四)--容器的基本操作
Docker的容器十分輕量級,用戶可以隨時創建或刪除容器。
新建容器:docker create
Example:docker create –ti ubuntu
說明:使用docker create命令創建的容器處於停止狀態,可以使用docker start命令啟動它。
新增加了一個name等於test_create的,status等於create
新建並啟動容器:docker run
Example: docker run ubuntu/bin/echo “Hello World”
說明: 等價於先執行docker create命令,再執行docker start命令。
docker run 背後的故事:
1 檢查本地是否存在制定的鏡像,不存在就從公有倉庫下載。
2 利用本地鏡像創建並啟動一個容器。
3 分配一個文件系統,並在只讀的鏡像層外面掛載一層可讀寫層。
4 從宿主機配置的網橋接口橋接一個虛擬接口到容器中去。
5 從地址池配置一個IP地址給容器。
6 執行用戶的指定的用戶程序。
7 執行完畢後容器被終止。
一條簡單的命令:
docker run -i –t ubuntu/bin/bash
-t : 讓docker分配一個偽終端並綁定到容器的標準輸入上。
-i : 讓容器的標準輸入保持打開。
在交互模式下,用戶可以通過所創建的終端來輸入命令,exit命令退出容器。
退出後,容器自動處於終止狀態。
3秒前容器被退出了。
守護臺運行:
更多的時候,需要讓Docker容器運行在後臺以守護態(daemonized)形式運行。用戶可以通過
添加-d參數來實現。
Example:
docker run –d ubuntu/bin/sh -c “while true;do echo hello world;sleep 1;done”
補充:
查看日誌: docker logs
docker logs –f 動態的查看日誌,類似咱們查看tomcat的日誌一樣
2.終止容器
可以使用docker stop命令來終止一個運行中的容器。
docker stop
註意:
當容器中的應用終結時,容器也會自動停止。
查看終止的容器:docker ps -a
查看運行的容器:docker ps
重新啟動容器:docker start
3.進入容器
在使用-d參數時,容器啟動後會進入後臺,用戶無法看到容器中的信息。
docker exec
Exec可以直接在容器內部運行命令。
進入容器:
docker exec -i –t bash
run 運行一個容器後,進入容器的話,exit容器直接退出
exec進入容器後,exit容器不退出,仍在後臺運行
4.刪除容器
可以使用docker rm命令刪除終止狀態的容器。
如果刪除正在運行的容器,需要停止容器在進行刪除
不管容器是否運行,可以使用docker rm–f命令進行刪除。
5.導入和導出容器
導出容器是指導出一個已經創建的容器到一個文件,不管容器是否處於運行狀態。可以使用docker export命令。
docker export
Example:
Docker export test_id >test.tar
導出的文件又可以使用docker import命令導入,成為鏡像。
Example:
cat export.tar | docker import - liming/testimport:latest
導入容器生成鏡像,通過鏡像生成容器,查看容器裏面的內容
往期docker學習:
認識docker
核心概念和安裝
容器的常用操作
跟我一起學docker(四)--容器的基本操作