Docker Hub 像 GitHub 那樣的「Fork」
Docker Hub 沒有像 GitHub 那樣的「一鍵 Fork」功能,因此你無法直接在網頁上點擊按鈕將別人的 Docker 倉庫克隆到自己的帳戶下。
GitHub
如果你想將某個公共鏡像轉存到自己的 Docker Hub 倉庫中,需要透過本地命令行(CLI)執行「拉取、重命名、推送」的流程:
轉存鏡像的操作步驟
- 登入 Docker Hub:
在終端機中執行:bashdocker login請謹慎使用程式碼。 - 拉取別人的鏡像:
例如,拉取someone/image-name:bashdocker pull someone/image-name:latest請謹慎使用程式碼。 - 重新標記鏡像(Tagging):
將該鏡像重新命名為你自己的用戶名和倉庫名:bashdocker tag someone/image-name:latest your_username/your-repo-name:latest請謹慎使用程式碼。 - 推送至你的倉庫:
bash
docker push your_username/your-repo-name:latest請謹慎使用程式碼。
進階替代方案:自動化同步
如果你需要頻繁同步或在大批量遷移鏡像,可以使用以下工具或方法:
- GitHub Actions:可以設定 CI 流程,自動拉取國外或他人的鏡像並推送到你的私有倉庫或個人 Docker Hub。
- skopeo:這是一個專門用於在不同鏡像倉庫(Registries)之間遷移鏡像的工具,不需要在本地安裝 Docker 守護進程,效率更高。
bash
skopeo copy docker://docker.io/someone/image-name:latest docker://docker.io/your_username/your-repo-name:latest請謹慎使用程式
注意事項
- 版權與授權:轉存他人鏡像時,請務必留意原作者的軟體授權協議(如 MIT, Apache 2.0 等),尤其是用於商業用途時。
- 更新同步:手動轉存的鏡像不會隨原倉庫自動更新。如果原作者更新了鏡像,你需要再次執行上述步驟來更新你自己的倉庫。
共有 0 条评论