天天看點

Docker系列02: 容器生命周期管理 鏡像&容器

A) Docker資訊

1. 檢視docker運作狀态

docker.service - Docker Application Container Engine

Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled)

Active: active (running) since Mon 2018-08-27 16:05:55 CST; 36min ago

Docs: https://docs.docker.com

Process: 28333 ExecReload=/bin/kill -s HUP $MAINPID (code=exited, status=0/SUCCESS)

Main PID: 28356 (dockerd)

Memory: 145.8M

2. 檢視docker版本

Docker version 18.06.1-ce, build e68fc7a

3. 檢視docker詳細資訊

Client:

Version: 18.06.1-ce

API version: 1.38

Go version: go1.10.3

Git commit: e68fc7a

Built: Tue Aug 21 17:23:03 2018

OS/Arch: linux/amd64

Experimental: false

Server:

Engine:

Version: 18.06.1-ce

API version: 1.38 (minimum version 1.12)

Go version: go1.10.3

Git commit: e68fc7a

Built: Tue Aug 21 17:25:29 2018

OS/Arch: linux/amd64

Experimental: false

B) docker鏡像管理

1. 檢視所有鏡像

REPOSITORY TAG IMAGE ID CREATED SIZE

ubuntu latest 16508e5c265d 4 days ago 84.1MB

hello-world latest 2cb0d9787c4d 6 weeks ago 1.85kB

2. 導入鏡像檔案

如:

3. 導出鏡像檔案

另一種是使用export和import指令

使用例子如下:

需要注意兩種方法不可混用。

如果使用import導入save産生的檔案,雖然導入不提示錯誤,但是啟動容器時會提示失敗,

會出現類似"docker: Error response from daemon: Container command not found or does not exist"的錯誤。

類似,使用load載入export産生的檔案,也會出現問題。

4. 查找鏡像

如:docker search apache

5. 下載下傳鏡像

如:

docker pull ubuntu:16.04

docker pull ubuntu:latest

6. 删除鏡像

如:docker rmi ubuntu:14:04

7. 檢視鏡像曆史記錄

如:docker history ubuntu:14:04

C) docker 容器管理

1.建立一個容器但不啟動它,傳回容器ID作為輸出

如:docker create -t -i ubuntu

建立一個基于centos鏡像的容器,并傳回它的容器ID。

2. 建立容器(處于停止狀态,未啟動)

如果本地存在,則使用本地的鏡像,如果沒有,則從鏡像倉庫中擷取

3. 建立并啟動容器

docker run -d --name mysqlserver mysql

基于mysql鏡像建立并啟動一個名為mysqlserver的容器,并在背景運作它。

4. 停止容器

5. 啟動容器

6. 重新開機容器

7. 删除容器

8. 向容器發送SIGKILL信号

9. 連接配接正在運作的容器并傳回其互動式的shell

10. 列出容器中發生的事件

11. 列出容器中正在運作的程序

12. 檢視運作中的容器

13. 檢視所有容器

-a列出所有容器

14. 檢視本地所有容器

15. 檢視本地正在運作的容器

16. 進入容器

17. 停用運作中的全部容器

-q隻列出容器的ID

18. 停止全部容器(包括停止的)

19. 停用并删除容器