Docker中實(shí)現(xiàn)鏡像的推送和拉取的代碼步驟
一、核心命令
操作 | 命令示例 | 說明 |
---|---|---|
登錄倉庫 | docker login | 登錄 Docker Hub 或私有倉庫 |
標(biāo)記鏡像 | docker tag 源 目標(biāo) | 給鏡像加目標(biāo)倉庫標(biāo)識(shí) |
推送鏡像 | docker push 倉庫/鏡像名 | 上傳鏡像到倉庫 |
拉取鏡像 | docker pull 鏡像名 | 從倉庫下載鏡像 |
二、推送鏡像步驟詳解
1. 登錄倉庫
docker login
默認(rèn)是登錄 Docker Hub。若使用私有倉庫:
docker login your-registry.com
2. 給鏡像打標(biāo)簽(tag)
假設(shè)本地有鏡像:my-app:1.0
docker tag my-app:1.0 username/my-app:1.0
- 如果是私有倉庫:
docker tag my-app:1.0 myregistry.com/dev/my-app:1.0
3. 推送鏡像
docker push username/my-app:1.0
私有倉庫:
docker push myregistry.com/dev/my-app:1.0
三、拉取鏡像
docker pull username/my-app:1.0
私有倉庫鏡像:
docker pull myregistry.com/dev/my-app:1.0
四、常見私有倉庫支持
倉庫類型 | 地址示例 | 特點(diǎn) |
---|---|---|
Docker Hub | docker.io | 默認(rèn)公開倉庫 |
Harbor | harbor.mycompany.com | 企業(yè)常用,權(quán)限+審計(jì)強(qiáng) |
AWS ECR | xxxx.dkr.ecr.us-west-1.amazonaws.com/repo | 云端集成強(qiáng) |
GitHub Packages | ghcr.io/用戶名/鏡像名 | GitHub CI/CD 一體化 |
五、查看和管理鏡像
docker images # 查看本地鏡像 docker rmi 鏡像ID # 刪除鏡像 docker image ls # 同上
六、本地搭建鏡像倉庫(Registry)
docker run -d -p 5000:5000 --name registry registry:2
推送示例:
docker tag my-app localhost:5000/my-app docker push localhost:5000/my-app
七、配置 Docker 信任私有倉庫(非 HTTPS)
如果是 HTTP 倉庫(如 localhost
或自建倉庫),需修改:
vim /etc/docker/daemon.json { "insecure-registries": ["localhost:5000"] } systemctl restart docker
八、進(jìn)階技巧
技巧/問題 | 說明 |
---|---|
鏡像壓縮推送慢 | 用 docker save + gzip 壓縮傳輸 |
不用每次 login | 配置 ~/.docker/config.json |
CI/CD 自動(dòng)推送 | Jenkins/GitLab CI 中嵌入 login、push |
清理本地舊鏡像 | docker image prune 自動(dòng)清理 |
九、鏡像導(dǎo)出/導(dǎo)入(離線推送)
# 導(dǎo)出鏡像 docker save my-app:1.0 > my-app.tar # 拷貝到目標(biāo)機(jī)器后導(dǎo)入 docker load < my-app.tar
十、總結(jié)一張圖
docker tag docker push 本地鏡像 --------------> myregistry.com/my-app:1.0 -------------> 鏡像倉庫 鏡像倉庫 <--------------------------------------------- docker pull 拉取鏡像
到此這篇關(guān)于Docker中實(shí)現(xiàn)鏡像的推送和拉取的代碼步驟的文章就介紹到這了,更多相關(guān)Docker鏡像推送和拉取內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
docker/docker desktop for window環(huán)境下創(chuàng)建本地鏡像倉庫方式
這篇文章主要介紹了docker/docker desktop for window環(huán)境下創(chuàng)建本地鏡像倉庫方式,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2025-03-03使用docker極簡打包java.jar鏡像并啟動(dòng)的操作步驟
這篇文章主要介紹了用docker極簡打包java.jar鏡像并啟動(dòng),本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-08-08PVE下擴(kuò)展openwrt?for?x86分區(qū)大小方式
本文介紹了在PVE環(huán)境下如何對OpenWRT虛擬機(jī)的分區(qū)進(jìn)行擴(kuò)容,包括磁盤調(diào)整、軟件安裝、分區(qū)配置和系統(tǒng)引導(dǎo)等步驟,操作前需做好備份,以防數(shù)據(jù)丟失2024-10-10在Windows系統(tǒng)下安裝docker窗口的配置過程
相信大家都知道Docker有很多種安裝的選擇,其中支持最好的是Ubuntu系統(tǒng)。而且docker如果想在windows上運(yùn)行必須借助docker-machine,這篇文章將給大家詳細(xì)的介紹在Windows系統(tǒng)上安裝docker窗口的配置過程,有需要的朋友們可以參考借鑒。2016-10-10關(guān)于docker部署的jenkins跑git上的程序的問題
這篇文章主要介紹了docker部署的jenkins跑git上的程序的相關(guān)知識(shí),本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-11-11