antony@notes:~/container$ cat "Docker-軟體貨櫃-Appciation-container.md"
Docker 軟體貨櫃 (Appciation container)
Docker 軟體貨櫃 (Appciation container)

- Docker Engine:
- 是Docker的daemon
- 功能是提供container Network
- “>“就是命令模式
- 透過docker這個命令對Docker Engine告訴他說,你來幫我做container的維運
- container的維運有4個動作:
- 新增 (創建container)
- 修改 (對container內部的內做動態的修改)
- 刪除 (刪除container)
- 查詢 (看有幾台container)
- shim:中文翻做墊片
- runc把container產生完以後,程式就不run了,所以containerd沒辦法掌握runc產生的container的資訊,為了得知container的狀態,containerd會針對這台新創的container再啟動一個程式,也就是shim(墊片程式),來監控container,這個墊片程式會定時跟containerd回報,目前的container他的執行狀態,事實上containerd也是來扮演管理跟維運的角色,containerd所提供的功能list,就是得到shim的回報。
- 實務應用上就是企業所開發的應用系統
NAT
- NAT 的全名是 Network Address Translation
- 主要功能是提供內部私有IP轉換成外部IP可以正常連線上網,NAT機制:
- 封包偽裝(IP masquerade):可以將私有 IP(內部 IP)改變成真實 IP(外部 IP)再傳送到網際網路,使網路上的人無法得知私有網路的 IP 分配情形而增加網路安全性。
- 封包轉送:封包轉送是外網向NAT丟封包後,再由NAT依偽裝時的產生的紀錄再轉傳至子網路,相反路徑(由內網向外網丟封包)也是一樣,使用NAT轉址必須要開啟封包轉送。
- 封包過濾:外面封包不是內部虛擬機請求的,遇到實體網卡被擋下來
docker run --rm -d quay.io/cloudwalker/alpine sleep 120
sleep 120這個程式檔一定要存在quay.io/cloudwalker/alpine這個image的rootfs目錄區裡面-d: 推到背景去run--rm: 測試用的參數,只要這個container一關閉,也就是sleep睡醒了,--rm就會自動把container刪除。
bigred@alp:~$ docker search busybox
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
busybox Busybox base image. 2362 [OK]
progrium/busybox 70 [OK]
radial/busyboxplus Full-chain, Internet enabled, busybox made f… 43 [OK]
yauritux/busybox-curl Busybox with CURL 16
arm32v7/busybox Busybox base image. 10
armhf/busybox Busybox base image. 6
odise/busybox-python 4 [OK]
odise/busybox-curl 4 [OK]
arm64v8/busybox Busybox base image. 3
s390x/busybox Busybox base image. 2
prom/busybox Prometheus Busybox Docker base images 2 [OK]
i386/busybox Busybox base image. 2
aarch64/busybox Busybox base image. 2
p7ppc64/busybox Busybox base image for ppc64. 2
arm32v6/busybox Busybox base image. 2
joeshaw/busybox-nonroot Busybox container with non-root user nobody 2
mips64le/busybox Busybox base image. 1
spotify/busybox Spotify fork of https://hub.docker.com/_/bus… 1
ppc64le/busybox Busybox base image. 1
vukomir/busybox busybox and curl 1
lqshow/busybox-curl Busybox image adds a curl binary to /usr/bin 1 [OK]
arm32v5/busybox Busybox base image. 0
amd64/busybox Busybox base image. 0
concourse/busyboxplus 0
emccorp/busybox Busybox 0- busybox前面沒有”/“是光碟片原廠自己做的image
- 光片中心/帳號or機構or類別/光碟片名稱 : tags (通常是版本)
hub.docker.com 帳號:ncue 密碼:ya678kevi4
bigred@alp:~$ docker run --name a1 -it quay.io/cloudwalker/alpine sh
/ # busybox | grep httpd
/ #- Docker Alpine Image 內建的 busybox 並沒提供 httpd 功能