docker框架到這里我們已經(jīng)是第四期了,上一期我們介紹了docker鏡像的拉取和刪除等操作,今天我們就來介紹一下容器的啟動、查看、退出等操作,廢話不多說下面開始。
1. 新建并啟動容器
docker run 概述
docker進(jìn)程運(yùn)行與獨(dú)立的容器中,而容器是宿主機(jī)的一個進(jìn)程。宿主機(jī)可以是本地的也可以是遠(yuǎn)程的。每當(dāng)執(zhí)行docker run之后,容器進(jìn)程是獨(dú)立運(yùn)行的,它有自己的文件系統(tǒng)、網(wǎng)絡(luò)以及與主機(jī)隔離的進(jìn)程 。
這里將介紹如何使用docker run運(yùn)行容器以及容器資源。
docker run [options] image[:tag|digest] [command] [ags...]
docker run 命令必須指定一個容器鏡像,可以設(shè)置鏡像的一些默認(rèn)值:
前臺還是后臺運(yùn)行;容器身份標(biāo)識;網(wǎng)絡(luò)設(shè)置;運(yùn)行時對CPU和內(nèi)存約束。
OPTIONS說明(常用):
上圖表示的是交互式啟動ubuntu,后面的16.04是指在本地存在多個版本的鏡像時,必須添加tag。
交互式運(yùn)行的特點(diǎn)是:進(jìn)入到容器了,如果運(yùn)行的是ubuntu,則說明進(jìn)入到Ubuntu系統(tǒng)里面了。
而如果使用下面圖的命令則表示后臺運(yùn)行。
后臺運(yùn)行:當(dāng)你運(yùn)行Docker容器的時候你需要決定是要在后臺運(yùn)行還是默認(rèn)前臺運(yùn)行,當(dāng)你選擇后臺運(yùn)行時會在命令執(zhí)行后打印出最新運(yùn)行的容器ID。想要讓你的容器以后臺方式運(yùn)行只需要在使用參數(shù)-d=true或者-d即可。
為容器指定一個名字,docker run -d --name=ubuntu_server ubuntu:16.04
2. 列出當(dāng)前所有正在運(yùn)行的容器:
命令如下:docker ps [options]
OPTIONS說明(常用):
-a :列出當(dāng)前所有正在運(yùn)行的容器+歷史上運(yùn)行過的
-l :顯示最近創(chuàng)建的容器。
-n:顯示最近n個創(chuàng)建的容器。
-q :靜默模式,只顯示容器編號。
3. 進(jìn)入容器:
如果是后臺進(jìn)程,比如說是上圖中的Ubuntu,如何進(jìn)入到里面呢?此時的ubuntu和python都是后臺運(yùn)行
下面給大家介紹下進(jìn)入容器的兩種方式:
方式一:docker attach 容器ID
通過docker ps我們可以看到第一列就是container id,其實就是容器ID。但使用該命令有一個問題。當(dāng)多個窗口同時使用該命令進(jìn)入該容器時,所有的窗口都會同步顯示。如果有一個窗口阻塞了,那么其他窗口也無法再進(jìn)行操作。比如:
這個就是阻塞狀態(tài)。
方式二:使用docker exec進(jìn)入Docker容器,它主要表示:啟動容器并切換到當(dāng)前桌面
這種方式相對更簡單(最優(yōu)):docker exec -it 容器ID /bin/bash
4.退出容器
退出容器的方式有兩種:在已經(jīng)進(jìn)入的容器中輸入exit,但是此時容器就會自動關(guān)閉
另外還有一種退出而不關(guān)閉的方式是:ctrl+P+Q
如果沒有在容器里面,在外面想關(guān)閉一個容器可以使用stop 或者 kill
停止一個容器:docker stop 容器ID
強(qiáng)制停止容器:docker kill 容器id或者名
5.其他命令:
查看容器日志:docker logs [-f -t] 容器id
查看容器內(nèi)運(yùn)行的進(jìn)程:docker top 容器ID
查看容器內(nèi)部細(xì)節(jié):docker inspect 容器ID
以上就是docker容器新建啟動,查看和退出的教程, 最后大家如果對Python感興趣的話不妨來千鋒Python培訓(xùn)班了解一下我們的Python培訓(xùn)課程,現(xiàn)在咨詢還能免費(fèi)領(lǐng)取Python學(xué)習(xí)資料,快來了解一下吧。