无网络docker镜像迁移的实现

 更新时间:2025年06月10日 09:25:56   作者:xixingzhe2  
本文主要介绍了无网络docker镜像迁移的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

1、背景

  • 私服服务器:docker私服部署在没有网络的服务器A上。
  • 应用程序服务器:无网络服务器B,A和B可以相互通信
  • 开发者:开发者的电脑C有网络,C可以和A、B通信,可以上传私服,部署应用。

2、私服安装

有网络环境保存镜像

在有网络的电脑B上,运行以下命令将Docker Registry镜像保存为tar文件:

docker pull registry:2
docker save registry:2 > registry.tar

无网络安装

在服务器A上,运行以下命令加载并启动Docker Registry:

docker load < registry.tar
docker run -d -p 5000:5000 --restart=always --name registry registry:2

此时,服务器A上的Docker私有仓库已经启动,监听在localhost:5000。Docker Registry 本身不提供 Web 界面,默认仅提供 API 服务。

验证是否成功

curl http://your-registry-ip:5000/v2/_catalog
  • 预期响应:{"repositories":[]}(初始为空)。

部署可视化界面(非必须)

docker run -d \
  -p 8081:80 \
  -e REGISTRY_URL=http://your-registry-ip:5000/v2 \
  -e REGISTRY_TRUST_ANY_SSL=true \
  joxit/docker-registry-ui:static

访问地址:http://localhost:8081

3、构建应用镜像并上传到私有仓库

构建应用镜像

在电脑C上,构建你的应用镜像,例如:

docker build -t my-app:latest .

将应用镜像推送到服务器A的私有仓库

首先,将应用镜像打上服务器A私有仓库的标签

docker tag my-app:latest <服务器A的IP地址>:5000/my-app:latest

然后,将镜像推送到服务器A的私有仓库:

docker push <服务器A的IP地址>:5000/my-app:latest

在推送过程中,Docker会将镜像数据传输到服务器A上的私有仓库。

4、运行镜像

在服务器B上从私有仓库拉取镜像并运行应用。

拉取镜像

在服务器B上,运行以下命令从私有仓库拉取应用镜像:

docker pull <服务器A的IP地址>:5000/my-app:latest

运行应用容器

拉取镜像后,运行应用容器

docker run -d --name my-app-container <服务器A的IP地址>:5000/my-app:latest

到此这篇关于无网络docker镜像迁移的实现的文章就介绍到这了,更多相关docker无网络镜像迁移内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家! 

相关文章

  • Docker compose部署SpringBoot项目连接MySQL及遇到的坑

    Docker compose部署SpringBoot项目连接MySQL及遇到的坑

    这篇文章主要介绍了Docker compose部署SpringBoot项目连接MySQL,文中给大家强调了如果在使用的过程中修改了Dockerfile,一定要把之前的镜像删掉,具体内容详情跟随小编一起看看吧
    2021-09-09
  • Docker容器管理面板Dockhand的使用小结

    Docker容器管理面板Dockhand的使用小结

    Dockhand是一个现代化的Docker管理面板,支持容器管理、Compose堆栈编排、Git集成和多环境管理,下面就来详细的介绍一下,感兴趣的可以了解一下
    2026-06-06
  • Docker入门教程之本地打包docker镜像教程

    Docker入门教程之本地打包docker镜像教程

    Docker镜像是一个特殊的文件系统,既提供了运行时所需的程序、库和资源,还提供了相应的配置参数,只是不包含动态数据,下面这篇文章主要给大家介绍了关于Docker入门教程之本地打包docker镜像的相关资料,需要的朋友可以参考下
    2023-06-06
  • Docker打包镜像及修改配置的实现

    Docker打包镜像及修改配置的实现

    这篇文章主要介绍了Docker打包镜像及修改配置的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-01-01
  • Docker安装oracle数据库最新版教程

    Docker安装oracle数据库最新版教程

    这篇文章主要介绍了如何在Docker中安装和配置Oracle 11g数据库,包括安装Docker、拉取Oracle镜像、创建容器、进入容器配置、设置环境变量、创建软连接、修改用户密码、重启数据库以及使用Navicat进行连接测试,需要的朋友可以参考下
    2025-02-02
  • Docker 文件系统-AUFS 原理介绍

    Docker 文件系统-AUFS 原理介绍

    这篇文章主要介绍了Docker 文件系统-AUFS原理,Docker 主要是基于 Namespace、cgroups 和联合文件系统这三大核心技术实现的,下文相关内容需要的小伙伴可以参考一下
    2022-04-04
  • docker搭建prometheus监控教程

    docker搭建prometheus监控教程

    这篇文章主要介绍了docker搭建prometheus监控教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-03-03
  • docker安装rabbitmq无法进入管理页面的问题

    docker安装rabbitmq无法进入管理页面的问题

    这篇文章主要介绍了docker安装rabbitmq无法进入管理页面的问题,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-12-12
  • Docker实现TLS和CA认证的方法步骤

    Docker实现TLS和CA认证的方法步骤

    为了更便捷地连接Docker服务器,Docker服务器需要开放2375端口才能连接docker,本文主要介绍了Docker实现TLS和CA认证的方法步骤,具有一定的参考价值,感兴趣的可以了解一下
    2024-06-06
  • 修改Docker默认镜像和容器的存储位置的方法

    修改Docker默认镜像和容器的存储位置的方法

    本篇文章主要介绍了修改Docker默认镜像和容器的存储位置的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-03-03

最新评论