狀態查詢
生命週期
容器操作
容器配置
總結
yum install -y golang
[root@hy runc]# go version
[root@pc-hyman containerd]# docker export c7e726e36d1a -o busybox.tar
tar busybox.tar -c busyboxfs
ociversion:描述容器遵循的oci規範版本
id:描述容器id,用於區分同主機上的容器。對於跨主機的容器,id欄位可以相同
status:容器的生命週期狀態,可以是creating,created,running,stopped,這些狀態在生命週期中定義
pid:容器程序id,在linux平台上,程序id是必選的。它是容器內部執行的應用程式對應程序的id
bundle:容器的bundle目錄,bundle目錄主要存放容器執行時的配置檔案和容器的根檔案系統
annotations欄位是可選的,存放容器的注釋資訊。容器的狀態資訊除以上字段以外,具體的oci相容容器方案還可以定義其它字段,視具體的實現而定。
[root@pc-hyman ~]# runc state 1234
"env": [
"path=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
"term=xterm"
],"mounts": [
]
/ # env
term=xterm
path=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
/ # mount |grep pts
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=666)
prestart:這個hook在start命令之後,使用者定義的程式執行之前呼叫,比如在linux平台上,對於runc執行時方案,prestart hook在容器命令空間之後被執行,這樣hook可以有機會定製即將建立的容器。
createruntime:這個hook需要作為create操作的一部分在執行create操作時被呼叫。它的執行時間介於環境變數配置之後,改變當前所有程序/執行緒工作目錄之前(pivot_root)
createcontainer:同createruntime hook執行階段相同,但必須在它之後。
startcontainer:在使用者定義的程式執行之前執行。
poststart:在使用者定義的程式執行之後之前。
poststop:在容器刪除的核心操作之後,刪除動作返回之前執行。
create
[root@pc-hyman runc]# ls /home/ubuntuvm/containerd/demo/runc
busyboxfs config.json
[root@pc-hyman demo]# pwd
/home/ubuntuvm/containerd/demo
[root@pc-hyman demo]# ls
containerd-1.4.1 main main.go runc tools v1.4.1.zip
[root@pc-hyman demo]# runc create 12345
erro[0000] json specification file config.json not found
[root@pc-hyman demo]# runc create 12345 -b /home/ubuntuvm/containerd/demo/runc
[root@pc-hyman demo]# runc list
id pid status bundle created owner
12345 262814 created /home/ubuntuvm/containerd/demo/runc 2020-09-24t02:23:23.388415943z root
start
kill
delete
"root": ,
"mounts": [,,
....
}
kmp從入門到放棄
標籤 kmp 擴充套件kmp 給你兩個字串,你需要回答,b串是否是a串的子串 a串是否包含b串 a aaaaaaaaaaaaaaaaaaaaaaaaaab b aaaaaaaab 最壞狀態 o mn 一般做法 for 列舉b在a串中的起始位置 for 向後比較ab是否相等 o n m 傳說中的kmp...
beego 從入門到放棄
beego 的專案基本都是通過 bee命令來建立的,所以在建立專案之前確保你已經安裝了 bee 工具和 beego。如果你還沒有安裝,那麼請查閱 beego 的安裝 和 bee 工具的安裝 現在一切就緒我們就可以開始建立專案了,開啟終端,進入 gopath src 所在的目錄 建立乙個專案名為201...
Flutter從入門到放棄
本篇主要記錄下flutter的學習路線。一 認識flutter 可以檢視這些文章 二 dart語言 1 認識dart語言 2 學習 從2018.02開始出現dart2,屬於強型別語言。介紹位址參考 三 開始flutter 網上也有很多部落格介紹了flutter怎麼安裝,但大多介紹不全,第一次安裝難免...