docker映象和容器基本操作
一、
1.映象名稱
首先來看下映象的名稱組成:
-
鏡名稱一般分兩部分組成:[repository]:[tag]。
-
在沒有指定tag時,預設是latest,代表最新版本的映象
如圖:
這裡的mysql就是repository,5.7就是tag,合一起就是映象名稱,代表5.7版本的MySQL映象。
2.
需求:從DockerHub中拉取一個nginx映象並檢視
1)首先去映象倉庫搜尋nginx映象,比如:https://hub.docker.com
2)根據檢視到的映象名稱,拉取自己需要的映象,通過命令:docker pull nginx
3)通過命令:docker images 檢視拉取到的映象
3.
需求:利用docker save將nginx映象匯出磁碟,然後再通過load載入回來
1)利用docker xx --help命令檢視docker save和docker load的語法
例如,檢視save命令用法,可以輸入命令:
docker save --help
結果:
命令格式:
docker save -o [儲存的目標檔名稱] [映象名稱]
2)使用docker save匯出映象到磁碟
執行命令:
docker save -o nginx.tar nginx:latest
結果如圖:
3)使用docker load載入映象
先刪除本地的nginx映象:
docker rmi nginx:latest
然後執行命令,載入本地檔案:
docker load -i nginx.tar
結果:
二、容器操作
容器保護三個狀態:
-
執行:程序正常執行
-
暫停:程序暫停,CPU不再執行,並不釋放記憶體
-
停止:程序終止,回收程序佔用的記憶體、CPU等資源
其中:
-
docker run:建立並執行一個容器,處於執行狀態
-
docker pause:讓一個執行的容器暫停
-
docker unpause:讓一個容器從暫停狀態恢復執行
-
docker stop:停止一個執行的容器
-
docker start:讓一個停止的容器再次執行
-
docker rm:刪除一個容器
1.案例-建立並執行一個容器
建立並執行nginx容器的命令:
docker run --name nginxtest -p 80:80 -d nginx
命令解讀:
-
docker run :建立並執行一個容器
-
--name : 給容器起一個名字,比如叫做mn
-
-p :將宿主機埠與容器埠對映,冒號左側是宿主機埠,右側是容器埠
-
-d:後臺執行容器
-
nginx:映象名稱,例如nginx
這裡的-p
引數,是將容器埠對映到宿主機埠。
預設情況下,容器是隔離環境,我們直接訪問宿主機的80埠,肯定訪問不到容器中的nginx。
現在,將容器的80與宿主機的80關聯起來,當我們訪問宿主機的80埠時,就會被對映到容器的80,這樣就能訪問到nginx了