Docker容器如何更新打包并上傳到阿里云
這次來嘗試如何將已經運行的容器打包,封裝成鏡像,并且上傳到阿里云上,為了別的地方下載和使用更加的方便。
畢竟有Docker安裝不難,問題是一些特殊的配置麻煩,所以直接制作好,下次直接拉取了運行就會簡單的多了
首先,進入鏡像,如果不清楚地,可以看下上一章。
[root@VM_0_4_centos bin]# docker exec -it 8bf811453641 /bin/bash
然后更新鏡像:
root@8bf811453641:/# apt-get update
這里更新后需要退出:
exit
然后提交容器副本創建一個新的鏡像:
[root@VM_0_4_centos bin]# docker commit -m 'nginx_my' -a 'szy' 8bf811453641 niginx_my/nginx:v1
成功返回sha碼:
[root@VM_0_4_centos bin]# docker commit -m 'nginx_my' -a 'szy' 8bf811453641 niginx_my/nginx:v1sha256:1836e4017c607fdd790068da627366e4e0c0cbe2c0dc53626f9a3fe0a2d03ab2
可以發現,鏡像已經打包成功了:
運行新容器:
[root@VM_0_4_centos bin]# docker run --name nginx_test2 -d -p 80:80 niginx_my/nginx:v1
可以運行新的容器,看運行結果。
到這里,表示鏡像已經制作完成了。下面來鏡像進行上傳。
這里是上傳到阿里云的鏡像倉庫,然后綁定GIT的倉庫,拉取也是從這里拉取的。這里記錄一下;
同時也感謝,https://blog.csdn.net/jacksonary/article/details/78961612 ,從這里得到的方法。
進入到阿里云的控制后臺:
然后創建鏡像倉庫:
創建好后,去選擇代碼源:
這里還是比較簡單的,就是綁定你的GIT賬戶的一個倉庫。綁定后就行了。
創建成功后,進入倉庫的配置里面:
阿里云就已經將拉取的指令和推送的指令都給出來了,只需要運行就行了。
這里還實驗下上傳鏡像到倉庫。
直接copy指令過來,上傳,很簡單的,上傳的過程會有點慢。
[root@VM_0_4_centos ~]# docker imagesREPOSITORY TAG IMAGE ID CREATED SIZEniginx_my/nginx v1 1836e4017c60 16 hours ago 125MBhello-world latest 4ab4c602aa5e 10 days ago 1.84kBnginxlatest 06144b287844 13 days ago 109MB[root@VM_0_4_centos ~]# docker login --username=sun29550 registry.cn-qingdao.aliyuncs.comPassword:WARNING! Your password will be stored unencrypted in /root/.docker/config.json.Configure a credential helper to remove this warning. Seehttps://docs.docker.com/engine/reference/commandline/login/#credentials-store Login Succeeded[root@VM_0_4_centos ~]# docker tag [1836e4017c60] registry.cn-qingdao.aliyuncs.com/mysokou/soko_2:v1Error parsing reference: '[1836e4017c60]' is not a valid repository/tag: invalid reference format[root@VM_0_4_centos ~]# docker tag niginx_my/nginx:v1 registry.cn-qingdao.aliyuncs.com/mysokou/soko_2:v1[root@VM_0_4_centos ~]# docker push registry.cn-qingdao.aliyuncs.com/mysokou/soko_2:v1The push refers to repository [registry.cn-qingdao.aliyuncs.com/mysokou/soko_2]9e2c0a77e8a4: Pushed579c75bb43c0: Pushed67d3ae5dfa34: Pushed8b15606a9e3e: Pushedv1: digest: sha256:49768cfb207e5a133d62f3f5a7e59723e7a8c3a0d2c81e4155b34561f557adfc size: 1160
上傳成功后,到阿里的后臺看,證明上傳成功了。
追加DockerHUB上傳方法
我的鏡像
加完tag就可以直接推送了,我是在推送之前登錄的
PS D:Docker Toolbox> docker loginLogin with your Docker ID to push and pull images from Docker Hub. If you don’t have a Docker ID, head over to https://hub.docker.com to create one.Username: sun2955Password:Login Succeeded
登錄后直接推送
PS D:Docker Toolbox> docker tag nginx_my:0.1 sun2955/my_docker:v1PS D:Docker Toolbox> docker push sun2955/my_docker:v1
結果:
The push refers to repository [docker.io/sun2955/my_docker]88353f831c90: Pushedf978b9ed3f26: Pushed9040af41bb66: Pushed7c7d7f446182: Pushedd4cf327d8ef5: Pushed13cb14c2acd3: Pushedv1: digest: sha256:a7d0b9705e68a3c161174fb791656af8e85b1ed97d2a3342530763d55cf05482 size: 1569PS D:Docker Toolbox>PS D:Docker Toolbox>PS D:Docker Toolbox>
可以去后臺看看鏡像,上傳成功.
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。
相關文章:
1. .NET SkiaSharp 生成二維碼驗證碼及指定區域截取方法實現2. CentOS郵件服務器搭建系列—— POP / IMAP 服務器的構建( Dovecot )3. 存儲于xml中需要的HTML轉義代碼4. docker容器調用yum報錯的解決辦法5. django創建css文件夾的具體方法6. phpstudy apache開啟ssi使用詳解7. VMware中如何安裝Ubuntu8. IntelliJ IDEA創建web項目的方法9. javascript xml xsl取值及數據修改第1/2頁10. ASP中實現字符部位類似.NET里String對象的PadLeft和PadRight函數
