DOCKER IMAGE 建立匯出與匯入 經驗分享

一個客戶的簡單需求
希望我把開發環境都READY給他 讓他直接匯入DOCKER
就可以直接開始測試
所以有了以下的研究

環境為 ubuntu  Server 22.04.1 LTS
裝起來以後 先跑更新
apt-get update
安裝 SSH 很簡單, 執行以下指令即可

apt-get install openssh-server
裝完SSH以後就可以改用putty進入機器了

docker已存在ubuntu裡面
可以去直接去找Image
這裡我要封裝debian的開發環境
所以找到debian的image
$ docker pull debian
下載完image
可以下指令看目前有哪些image
$docker images
把IMAGE跑起來
$sudo docker run -t -i debian    /bin/bash
再來就建立容器後會跳到bash 看你要裝甚麼東西就可以操作了
可以輸入EXIT離開容器  但離開了狀態就不會存下來
以下為封裝說明
用另外一個putty登入機器
列出所有容器
docker container ls
會看到目前有在運行的容器
記住要匯出的容器ID  類似像這樣970a49293fc9   
輸入
$sudo docker export 7691a814370e > newdebianai.tar 
這個TAR檔案就是你的DOCKER IMAGE
提供給需要的人
再來是匯入說明

k8s@k8s-Virtual-Machine:~$ cat newdebianai.tar | docker import - newdebianai
sha256:970a49293fc968343d942125de1e9a4aa32d4923fdd8cc19aa04f8b307479b7d
k8s@k8s-Virtual-Machine:~$ docker images
REPOSITORY                    TAG              IMAGE ID       CREATED          S                IZE
newdebianai                   latest           970a49293fc9   16 seconds ago   5                58MB
testdebianai                  latest           b5ccf7a5648a   11 minutes ago   5                76MB
debianai                      latest           017e82fcf709   19 minutes ago   5                60MB
newdebian                     latest           9323f2e591b9   54 minutes ago   5                58MB
docker-demo-app               latest           5e90d1742167   47 hours ago     7                5.3MB
debian                        latest           446440c01886   9 days ago       1                24MB
gcr.io/k8s-minikube/kicbase   v0.0.36          866c1fe4e3f2   2 months ago     1                .11GB
node                          10.15.3-alpine   56bc3a1ed035   3 years ago      7                1MB
要注意後面要帶 /bin/bash   因為這個IMAGE是由 /bin/bash啟動的

k8s@k8s-Virtual-Machine:~$ docker run -it newdebianai /bin/bash
root@a65e9f7dd64a:/# 
root@a65e9f7dd64a:/# exit
exit
k8s@k8s-Virtual-Machine:~$

footer See also :

留言

這個網誌中的熱門文章

Office 2021 離線安裝封裝與KMS啟動步驟

Ollama使用心得與模型導入教學

ARC下NSMutableDictionary 無法使用retainCount