底層採用PVE(Proxmox),建立KVM VM,KVM VM使用docker-machine或是自建用boot2docker iso做好backup,使用時直接restore docker 執行時 Restart policies:always,這樣VM開機就會自動執行,不需要另外再設定。 Volume 直接用docker-compose YAML volume減少權限問題,資料也會儲存在VM內,使用VM後,備份是以VM為主,不用擔心資料遺失 一個VM放多個docker、整組docker-compose 或 一個VM放單一功能docker可以自己決定 VM可以被快照保護,一但出問題,還原後、開完機,VM內的docker會自動起服務,資料也是存在的,減少docker backup&resotre問題 為了管理docker方便,第一次建立VM時,執行Portainer always,可以backup,將來每一個VM都可以利用圖形界面查看docker運作情況 缺點: 硬碟空間使用受限於KVM,擴充大小有可能需要重開機 線上移轉只能以VM,不能用docker,但docker設計上也不走線上移轉 為什麼需要用到docker呢? 因為現在很多專案有直接提供docker使用,確實可以減少大量安裝時間, 但volume資料儲存、權限卻是最大的問題,上述架構可以解決這部份顧慮。

繼續閱讀

docker backup

https://docs.docker.com/storage/volumes/#backup-restore-or-migrate-data-volumes $ docker run --rm --volumes-from dbstore -v $(pwd):/backup ubuntu tar cvf /backup/backup.tar /dbdata ??? Real Demo Example: mongo cantainer mongo: image: mongo #restart: always environment: MONGO_INITDB_ROOT_USERNAME: root MONGO_INITDB_ROOT_PASSWORD: example volumes: - alldata:/data/db networks: - fastdev volumes is /data/db docker running name is testbackup_mongo_1_1c9e49740f2e (this use docker ps check your run time docker name. Don’t copy) run $ docker run --rm --volumes-from testbackup_mongo_1_1c9e49740f2e -v $(pwd):/backup ubuntu tar cvf /backup/backup.

繼續閱讀

https://www.portainer.io/ docker run -d -p 9000:9000 --restart always -v /var/run/docker.sock:/var/run/docker.sock -v /opt/portainer:/data portainer/portainer 今天發現一個docker gui管理工具 https://www.portainer.io/ 很符合簡單管理 先用docker-machine開一台機器,直接就是docker ready的VM ,VM可以是virtualbox等等 然後登入後,直接用 啟動 portainer的docker,管理這台機器上的docker 有圖形化介面,可以看到每一個docker使用情況,又可以直接登入到docker內,web terminal,這樣就有符合實際使用情況了 docker資料有用volume寫到本機vm內,再把整台vm打包備份的話,資料又不容易不見

繼續閱讀

docker問題

https://blog.csdn.net/u011166225/article/details/84940228 对于个人开发者来说,在一定情况下很好用。但是对于构建管理项目或者提供构建流程管理的Devops项目而言却是个灾难–本地存储结构不能对用户开放,它们也不能干扰用户本身的构建流程。所幸的是,Moby umbrella的开发团队注意到了这一点,他们希望通过重构存储管理和容器快照来解决一部分问题,于是BuildKit诞生了。 -——————– 作者:狗蛋丶 来源:CSDN 原文:https://blog.csdn.net/u011166225/article/details/84940228 版权声明:本文为博主原创文章,转载请附上博文链接!

繼續閱讀

http://dockone.io/question/1516 巨坑! Centos7默认xfs文件系统与docker默认overlay2存储驱动不匹配,会导致容器内文件无法删除等问题 https://blog.csdn.net/weixin_41826563/article/details/80549323 wx65251206 再次遇到这个问题,终于还是发扬刨根问题的精神,经过一上午的百度,google,bing 终于找到根本原因。 这里记录一下,为了帮助后面的人,同时也提醒自己。 问题原因与docker无关,在于linux内核版本。 测试有问题的内核版本是Red Hat 4.8.3-9—对应的发行版是CentOS7.2

繼續閱讀

dpsrm < pattern docker cantainer name > #!/bin/sh IFS=$'\n' echo $1 docker ps -a --no-trunc | grep $1 | awk '{print $1}' | xargs -r --no-run-if-empty docker stop docker ps -a --no-trunc | grep $1 | awk '{print $1}' | xargs -r --no-run-if-empty docker rm docker rmi -f $(docker images | grep $1 | awk '{print $3}')

繼續閱讀

作者的圖片

Sue boy

Sueboy Can support You

CIO

Taiwan