2016-03-01 31 views
0

大量的文檔,但我仍然錯過了一些東西。我的目標是運行一次性註冊表(2.0)推送到它的幾個圖像和導出\提交容器。 我需要把它放在zip文件中才能沒有互聯網的機器。Docker 用數據提交一個容器

事情是 - 我推送到註冊表的圖像不被保留。每當我輸入regsitry來測試 - 它都是空的。據我所知,commit \ export將無法在掛載的捲上工作 - 我如何「禁用」初始註冊表碼頭的卷?

回答

2

我寧願建議你通過單獨複製所需的圖像,然後在運行時將它們掛載到註冊表容器中,將圖像(註冊表v2)從傳輸數據中解耦出來。

有點像這樣:

在機器上,你正準備註冊表,使用像

docker run -d \ 
    --name registry \ 
    --restart=always \ 
    -e SEARCH_BACKEND=sqlalchemy \ 
    -e STORAGE_PATH=/srv/docker-registry \ 
    -v /srv/data/docker-registry:/srv/docker-registry \ 
    -p 127.0.0.1:5002:5000 \ 
    registry:2.0.0 

東西然後標記您的圖像運行註冊表容器爲localhost:5000 /回購名稱/圖片-name和執行

docker push localhost:5000/repo-name/image-name 

之後,焦油/ ZIP /不管/ SRV /數據/碼頭工人的註冊表,並做

docker save -o ~/docker-registry-v2 registry:2.0.0 

複製這兩個檔案到目標機器,

docker load -i ~/docker-registry-v2 

解壓縮/解壓縮/無論圖像檔案,並再次運行註冊表wieht類似的運行命令如上,提供給你解壓縮的圖像檔案的目錄作爲-v後的第一個路徑。

使用此技術,您的註冊表中的回購和圖像也將在容器破壞和重新啓動後存活。

+0

令人驚歎。會做到這一點。 – user1025852

相關問題