我正在使用Ubuntu 14.04並運行一些碼頭容器和圖像與Python腳本。現在我必須重新安裝到另一臺Ubuntu機器。有沒有辦法備份我的碼頭環境
Ex: that machine is not even having docker installed
有沒有辦法來備份完整的碼頭工人引擎從我配置的機器到另一臺機器
我正在使用Ubuntu 14.04並運行一些碼頭容器和圖像與Python腳本。現在我必須重新安裝到另一臺Ubuntu機器。有沒有辦法備份我的碼頭環境
Ex: that machine is not even having docker installed
有沒有辦法來備份完整的碼頭工人引擎從我配置的機器到另一臺機器
要備份的位置因運行容器的方式以及要還原到的環境而異。有些目錄備份包括:
什麼,這並不包括你已經安裝任何容器特定主機卷已定製的啓動腳本到主機文件系統上的各個位置。您可以通過以下方式查找這些目錄:
$ docker ps -q | xargs docker inspect -f '{{.Name}}:
{{ range .HostConfig.Binds }}{{.}}
{{end}}
'
如果以某種方式更改目標服務器,更改運行不同版本的Linux的內核,您可能會更改存儲驅動程序,這會導致舊圖像和容器無法訪問。在這種情況下,爲了複製圖像,我建議您使用註冊表服務器來推送您的圖像,並將它們放在新主機上。註冊表服務器可以相當容易地在容器中運行,並且是在主機之間移動圖像的首選方式。如果出於某種原因無法使用註冊表服務器,則可以在舊主機上使用docker save
,在新主機上使用docker load
將圖像保存到tar文件並導入它們。
隨着平臺更改,在複製圖像後,您仍需要複製/var/lib/docker/volumes
和任何其他主機位置中的卷。然後,您需要複製容器配置,最好使用docker-compose.yml來重新啓動新主機上的容器。
至少,你有新的Ubuntu計算機上安裝多克(相同的版本如果可能的話)。
在您的原始機器上,您可以正常關閉您的容器。備份/var/lib/docker
(默認情況下),然後在新機器上恢復。
我使用AWS EC2現貨實例執行此操作。不保證這是否適用於不同版本的Docker。
碼頭本身是一個容器,你爲什麼要備份。您必須安裝docker來運行圖像/容器 –