Docker入門簡記

2022-04-09 23:48:16 字數 2250 閱讀 2029

映象相關命令

映象拉取

docker pull [映象名]

eg: docker pull jim3me/etcdkeeper

映象建立

docker build -t[映象名稱] [dockerfile檔案所在路徑]

建立映象的目錄需要包含dockerfile檔案,裡面實質包含建立映象時需要的操作,以類似於指令碼的形式描述,次檔案內容暫不在本篇範圍內,一般網上支援docker執行的原始碼都會包含這個檔案,github的專案尤為顯著,一般可以cd到該目錄下建立

cd /home/aa/document/otherproject/proj1

docker build -t myimage .

映象檢視

docker images

映象刪除

docker image rm [映象名|映象id]

-f 加上此引數使得刪除關聯的卷標

容器相關命令

映象執行(建立新的容器並把映象丟到容器中執行)

docker run [映象名|映象id]

run可帶命令本身的引數,也可帶映象執行的時候帶的引數。命令的引數:

-i -t 互動模式

-privileged=true 以root使用者的身份去執行,預設該值為false

-v [hostpath]:[containerpath] 路徑或者檔案從宿主機對映到容器中。如果hostpath的物件並不存在,則程式會在宿主中建立乙個目錄。這種操作應該是所謂的「持久化」,實際操作跟軟連線和檔案系統掛載有關係

--volumes-form [name|id] 與指定容器共享卷標,但是並非額能完全共享,映象唯讀層的內容則不會共享,僅共享讀寫層的內容。

-d 以守護模式執行,這樣執行映象時就不會同時進入映象

-p [hostport]:[containerport] 埠對映

--name 容器名稱,如不給則會隨機生成乙個名稱

--net= 網路型別,分4種

host:與宿主共用網路

none:無網路環境

bridge:網橋模式,預設

container: 語法--net=container:[name|id] 與指定容器公共網路,一旦以這種形式設定,則無法在本容器中開啟埠對映,所有對映均要在所屬容器中開啟。

容器停止

docker stop [containerid|containername]

容器移除

docker rm [containerid|containername]

容器重啟

docker restart [containerid|containername]

容器執行

docker start [containerid|containername]

容器日誌

docker logs [id|name] --since="yyyy-mm-ddthh:mm:ss" 年月日時分秒

容器重新命名

檢視所有容器

docker ps -a

檢視所有執行的容器

docker ps

進入容器執行命令

docker exec [containerid|containername] [exename] [exe parameter]

eg:docker exec prometheus /bin/sh #進入普羅公尺修斯的容器中開啟乙個終端,在此命令中加上-it引數則不會因為該容器正在執行而被阻塞sh程序。

檢視容器資訊,包括埠對映,掛載,執行命令等

docker inspect [containerid|name]

修改容器設定,野蠻方法

因為基於linux一切皆檔案的定律,容器本身也是檔案,容器資訊定由檔案記錄,因此修改對應檔案則可修改容器的資訊。只要找對資訊所放的位置,定能修改成功,

1.修改前先關閉容器;

2.開啟配置檔案,存放在/var/lib/docker/containers//

如果是埠對映hostscofig.json

最主要的是config.v2.json,此處包含了諸多配置,埠,環境變數,fs掛載

以修改埠對映為例,需要修改兩個地方

a.hostconfig.json

「portbindings」:]

}b.config.v2.json

"exposedports":} //這裡填的都是容器

3.重啟docker #sudo service docker restart。通過inspece則可看到修改後的結果了

qt入門心得簡記

類qwidget 父類精簡版視窗 qmainwindow 帶選單欄的主視窗 子類 qdialog 對話方塊 子類 工程檔案.pro 用於生產makefile的配置檔案幫助文件1.每個控制項都有標頭檔案 2.類函式找不到,往父類尋找main.cpp1.系統標頭檔案都是沒有.h字尾的 3.a.exec ...

docker入門 docker安裝

docker入門 docker安裝 ubuntu 安裝 curl ssl sh 官方安裝指令碼自動安裝 systemctl enable docker systemctl is enabled docker 開機自啟動 sudo usermod ag docker npoulton 根據自己的使用者...

Docker(一) Docker入門簡介

docker是一種容器技術,是用於在某種程度上替換系統虛擬化的解決方案。使用docker可以很快速及便捷的交付應用,不用在考慮硬體及系統的相容性,使而更關注與業務的發展。docker 和硬體虛擬化方式的差異在於docker是在os層面上實現虛擬化,而基於硬體虛擬化方式則是在hw層面實現。p.s.來自...