docker镜像复制与常见命令
一、前言
最近通过阿里的镜像仓库远程拉取镜像,发现以前的版本不见了,拉取了最新的镜像,有发现版本不配问题。那么想使用老版本的镜像那就要从别的环境获取。于是就需要进行离线镜像复制,打包,上传,重新导入的过程。本篇就做一个记录。

二、docker镜像
1、以获取apollo镜像为例
从线上镜像仓库获取
1.docker pull apolloconfig/apollo-configservice:1.9.1
2.docker pull apolloconfig/apollo-adminservice:1.9.1
3.docker pull apolloconfig/apollo-portal:1.9.1
这里的问题是 1.91版本的镜像不维护了,所以拉取不到。如果想获取最新就不用加版本号
1.docker pull apolloconfig/apollo-configservice
2.docker pull apolloconfig/apollo-adminservice
3.docker pull apolloconfig/apollo-portal
但是最新的版本和我之前的数据库不兼容
所以从其他服务器复制旧版本镜像
三、镜像制作
docker images 查看镜像

docker镜像复制命令
docker save -o apollo-adminservice.tar apolloconfig/apollo-adminservice
docker save -o apollo-configservice.tar apolloconfig/apollo-configservice
docker save -o apollo-portal.tar apolloconfig/apollo-portal
docker镜像导入命令
docker load -i apollo-adminservice.tar
docker load -i apollo-configservice.tar
docker load -i apollo-portal.tar

四、docker命令大全
docker相关命令总汇:
systemctl start docker 启动docker
systemctl stop docker 关闭docker
systemctl restart docker 重启docker
systemctl enable docker 设置docker开机自启
systemctl status docker 查看docker运行状态
sudo systemctl daemon-reload 重新加载配置文件
- 搜索镜像:docker search <镜像名>,例如:docker search ubuntu。
- 下载镜像:docker pull <镜像名>:<标签>,例如:docker pull ubuntu:latest。
- 列出本地镜像:docker images。
- 删除本地镜像:docker rmi <镜像ID>,例如:docker rmi ubuntu:latest。
- 删除所有镜像:docker rmi $(docker images -aq)
- 查看镜像详细::docker inspect <镜像名>,例如:docker inspect ubuntu:latest。
- 创建自定义镜像:通过编写Dockerfile文件并使用docker build命令构建镜像。
- 导出和导入镜像:docker save <镜像名>:<标签> > 文件名.tar和docker load < 文件名.tar。
- 上传镜像到仓库:docker push <镜像名>:<标签>,例如:docker push myrepo/ubuntu:latest。
- 从仓库拉取镜像:docker pull <仓库地址>/<镜像名>:<标签>,例如:docker pull myrepo/ubuntu:latest。
- 使用镜像创建容器:docker run -d -p <主机端口>:<容器端口> <镜像名>:<标签>,例如:docker run -d -p 8080:80 nginx:latest。
- 列出正在运行的容器:docker ps,加上-a选项可以查看所有容器,包括已经停止的容器。
- 创建并启动容器:docker run <选项> <镜像名>:<标签>,例如:docker run -d -p 8080:80 nginx:latest。
- 停止容器:docker stop <容器ID或容器名>,例如:docker stop my_container。
- 启动容器:docker start <容器ID或容器名>,例如:docker start my_container。
- 重启容器:docker restart <容器ID或容器名>,例如:docker restart my_container。
- 进入容器内部:docker exec -it <容器ID或容器名> <命令>,例如:docker exec -it my_container /bin/bash。
- 查看容器日志:docker logs <容器ID或容器名>,例如:docker logs my_container。
- 删除容器:docker rm <容器ID或容器名>,例如:docker rm my_container。
- 查看容器详细信息:docker inspect <容器ID或容器名>,例如:docker inspect my_container。
- 导出和导入容器:docker export <容器ID或容器名> > 文件名.tar和docker import < 文件名.tar。
- 从容器创建新镜像:docker commit <容器ID或容器名> <新镜像名>:<标签>,例如:docker commit my_container my_image:latest。
- docker-compose down:停止并删除Compose启动的容器
- 查看Docker网络列表:docker network ls。
- 创建自定义桥接网络:docker network create <网络名称>,例如:docker network create my_network。
- 查看指定网络的详细信息:docker network inspect <网络名称或网络ID>,例如:docker network inspect my_network。
- 将容器连接到网络:docker network connect <网络名称> <容器名称或容器ID>,例如:docker network connect my_network my_container。
- 从网络中断开容器:docker network disconnect <网络名称> <容器名称或容器ID>,例如:docker network disconnect my_network my_container。
- 删除网络:docker network rm <网络名称>,例如:docker network rm my_network。
- 查看容器网络连接信息:docker network inspect <容器名称或容器ID>,例如:docker network inspect my_container。
- 修改容器网络连接:docker network disconnect <网络名称> <容器名称或容器ID>和docker network connect <网络名称> <容器名称或容器ID>。
- 登录到Docker Hub或私有仓库:docker login,例如:docker login myregistry.example.com。
- 登出Docker Hub或私有仓库:docker logout,例如:docker logout myregistry.example.com。
- 查看镜像仓库中的镜像列表:docker search <镜像名称>,例如:docker search ubuntu。
- 拉取镜像到本地:docker pull <镜像名称>,例如:docker pull ubuntu。
- 推送本地镜像到仓库:docker push <镜像名称>,例如:docker push myregistry.example.com/my_image。
- 从仓库中删除镜像:docker rmi <镜像名称>,例如:docker rmi myregistry.example.com/my_image。
- 为本地镜像添加标签:docker tag <本地镜像名称> <新标签名称>,例如:docker tag my_image:latest my_image:v1.0。
- 查看镜像详细信息:docker image inspect <镜像名称>,例如:docker image inspect ubuntu。
- 查看镜像历史:docker history <镜像名称>,例如:docker history ubuntu。
- 登录到远程仓库:docker login -u 用户名 -p 密码 192.168.25.163:8084
- docker network ls:列出所有网络。
- docker network create <network_name>:创建一个新的网络。
- docker volume ls:列出所有数据卷。
- docker volume create <volume_name>:创建一个新的数据卷。
- docker-compose up:在Compose文件所在目录启动容器。
- docker-compose down:停止并删除Compose启动的容器。
- docker system prune:清理不再使用的资源,包括停止的容器、未使用的镜像、网络和数据卷。
- docker push: 这是Docker的一个子命令,用于将本地的Docker镜像推送到远程Docker仓库。
相关文章:
docker镜像复制与常见命令
一、前言 最近通过阿里的镜像仓库远程拉取镜像,发现以前的版本不见了,拉取了最新的镜像,有发现版本不配问题。那么想使用老版本的镜像那就要从别的环境获取。于是就需要进行离线镜像复制,打包,上传,重新导入…...
如何在linux环境上部署单机ES(以8.12.2版本为例)
ES安装(以8.12.2版本为例) 首先创建好对应的文件夹然后在对应的文件夹下执行依次这些命令 1.wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-8.12.2-linux-x86_64.tar.gz 2.wget https://artifacts.elastic.co/downloads/…...
如何利用人工智能技术实现企业营销效率提升10倍(下)
01. AI在私域运营中可扮演重要角色 私域用户体验历程中的不满,对企业来说,无疑是一记沉重的打击。这些不满不仅会让用户感到失望和沮丧,更会在无形中侵蚀企业的各个环节,给业务带来不可估量的损失。 在私域环境中,每…...
【PHP + 代码审计】数组函数
🍬 博主介绍👨🎓 博主介绍:大家好,我是 hacker-routing ,很高兴认识大家~ ✨主攻领域:【渗透领域】【应急响应】 【Java、PHP】 【VulnHub靶场复现】【面试分析】 🎉点赞➕评论➕收…...
Keepalive与idle监测及性能优化
Keepalive 与 idle监测 Keepalive(保活): Keepalive 是一种机制,通常用于TCP/IP网络。它的目的是确保连接双方都知道对方仍然存在并且连接是活动的。这是通过定期发送控制消息(称为keepalive消息)实现的。如果在预定时…...
DS-红黑树(RBTree)
一.红黑树 1.1 红黑树的起源 当对对AVL树做一些结构修改的操作时候,性能较为低下,比如:插入时要维护其绝对平衡,旋转的次数比较多,更差的是在删除时,有可能一直要让旋转持续到根的位置。 因此1972年Rudolf…...
ubuntu 如何使用阿里云盘
你好,我是 shengjk1,多年大厂经验,努力构建 通俗易懂的、好玩的编程语言教程。 欢迎关注!你会有如下收益: 了解大厂经验拥有和大厂相匹配的技术等 希望看什么,评论或者私信告诉我! 文章目录 一…...
sqlite3 交叉编译
#1.下载源码并解压 源码路径如下,下载autoconf版本 SQLite Download Page 解压 tar -zxvf sqlite-autoconf-3450200.tar.gz cd sqlite-autoconf-3450200 mkdir build # 2. 配置源代码 # 假设你已经安装了交叉编译工具链,如gcc-arm-linux-gnueabih…...
【AI生成文章】flutter ChangeNotifierProvider 实用场景举例
内容由Ai 大模型生成,不能完全保障真实 ChangeNotifierProvider 是 Flutter 中一个非常实用的工具,用于在应用程序中管理和传递状态。以下是一些实用的场景举例: 1. 用户信息管理 在应用程序中,用户信息(如用户名、…...
【0274】从shared init file或local init file加载relation cache(2 - 1)
上一篇: 【0273】深入分析 relcache(relation descriptor cache)初始化第一阶段(1) 【0264】深入分析relcache(relation descriptor cache)缓存初始化第2阶段(2) 1. 前言 本文内容是作为《【0264】深入分析relcache(relation descriptor cache)缓存初始化第2阶段…...
蓝桥杯-02-2023蓝桥杯c/c++省赛B组题目
参考 2023 年第十四届蓝桥杯 C/C B组省赛题解 2023蓝桥杯c/c省赛B组题目(最全版): A:日期统计 这题方法应该很多,没有和别人讨论想法。我的解法思路是:先 load 函数生成所有这一年的合法日期,然后枚举所有可以从数据…...
欧拉筛+并查集
集合 - 洛谷 std::vector<int> minp, primes,primes1;void sieve(int n,int p) {minp.assign(n 1, 0);primes.clear();for (int i 2; i < n; i) {if (minp[i] 0) {minp[i] i;primes.push_back(i);}for (auto p : primes) {if (i * p > n) {break;}minp[i * p]…...
《桥接模式(极简c++)》
本文章属于专栏《设计模式(极简c版)》 继续上一篇《原型模式(极简c)》。本章简要说明桥接模式。本文分为模式说明、本质思想、实践建议、代码示例四个部分。 模式说明 方案: 将抽象部分与它的实现部分分离,…...
jconsole的使用
前提 已安装jdk 使用步骤 1、命令行输入jconsole...
JavaScript详细教程
文章目录 前言一、代码位置二、注释三、变量1.字符串类型2.数组3.对象(字典) 四、条件语句五、函数六、DOM模板 前言 JavaScript 是一种脚本编程语言,它可以在网页上实现复杂的功能,网页展现给你的不再是简单的静态信息࿰…...
Hive自定义GenericUDF函数
Hive自定义GenericUDF函数 当创建自定义函数时,推荐使用 GenericUDF 类而不是 UDF 类,因为 GenericUDF 提供了更灵活的功能和更好的性能。以下是使用 GenericUDF 类创建自定义函数的步骤: 编写Java函数逻辑:编写继承自 GenericUDF…...
伊理威科技:抖音开网店新手刚做选啥品
在数字浪潮中,抖音不仅是展示才艺的舞台,更是创业者的新天地。新手若想在这片热土上开垦网店,选品便是首要课题。选择产品如同种下希望的种子,既要考量土壤肥沃度,也得预测风雨适宜期。 兴趣与专长是选品的罗盘。热爱所…...
【爬虫】专栏文章索引
为了方便 快速定位 和 便于文章间的相互引用等 作为一个快速准确的导航工具 爬虫 目录: (一)web自动化和接口自动化 (二)实战-爬取Boss直聘信息数据...
【Linux】Linux开发工具-vim / 编译器-gcc/g++ / 调试器-gdb / git操作 / 项目自动化构建工具-make/Makefile
主页:醋溜马桶圈-CSDN博客 专栏:Linux_醋溜马桶圈的博客-CSDN博客 gitee:mnxcc (mnxcc) - Gitee.com 目录 1.在Linux写自己的第一个程序 1.1 nano指令 1.2 nano指令的使用 1.2.1 介绍 1.2.2 演示 1.2.2.1 创建.c文件 1.2.2.2 nano cod…...
解决VM重新打开后找不到共享文件夹的问题
我的问题是之前按照网上的文档设置了vm的共享文件夹,能成功使用,但是问题是下一次打开之后就找不到了,虚拟机设置里共享文件夹是启用的,文件夹也完成了映射网络驱动器,但是就是找不到共享文件夹 解决方法:…...
基于算法竞赛的c++编程(28)结构体的进阶应用
结构体的嵌套与复杂数据组织 在C中,结构体可以嵌套使用,形成更复杂的数据结构。例如,可以通过嵌套结构体描述多层级数据关系: struct Address {string city;string street;int zipCode; };struct Employee {string name;int id;…...
接口测试中缓存处理策略
在接口测试中,缓存处理策略是一个关键环节,直接影响测试结果的准确性和可靠性。合理的缓存处理策略能够确保测试环境的一致性,避免因缓存数据导致的测试偏差。以下是接口测试中常见的缓存处理策略及其详细说明: 一、缓存处理的核…...
【kafka】Golang实现分布式Masscan任务调度系统
要求: 输出两个程序,一个命令行程序(命令行参数用flag)和一个服务端程序。 命令行程序支持通过命令行参数配置下发IP或IP段、端口、扫描带宽,然后将消息推送到kafka里面。 服务端程序: 从kafka消费者接收…...
mongodb源码分析session执行handleRequest命令find过程
mongo/transport/service_state_machine.cpp已经分析startSession创建ASIOSession过程,并且验证connection是否超过限制ASIOSession和connection是循环接受客户端命令,把数据流转换成Message,状态转变流程是:State::Created 》 St…...
2.Vue编写一个app
1.src中重要的组成 1.1main.ts // 引入createApp用于创建应用 import { createApp } from "vue"; // 引用App根组件 import App from ./App.vue;createApp(App).mount(#app)1.2 App.vue 其中要写三种标签 <template> <!--html--> </template>…...
leetcodeSQL解题:3564. 季节性销售分析
leetcodeSQL解题:3564. 季节性销售分析 题目: 表:sales ---------------------- | Column Name | Type | ---------------------- | sale_id | int | | product_id | int | | sale_date | date | | quantity | int | | price | decimal | -…...
【C++从零实现Json-Rpc框架】第六弹 —— 服务端模块划分
一、项目背景回顾 前五弹完成了Json-Rpc协议解析、请求处理、客户端调用等基础模块搭建。 本弹重点聚焦于服务端的模块划分与架构设计,提升代码结构的可维护性与扩展性。 二、服务端模块设计目标 高内聚低耦合:各模块职责清晰,便于独立开发…...
10-Oracle 23 ai Vector Search 概述和参数
一、Oracle AI Vector Search 概述 企业和个人都在尝试各种AI,使用客户端或是内部自己搭建集成大模型的终端,加速与大型语言模型(LLM)的结合,同时使用检索增强生成(Retrieval Augmented Generation &#…...
Xen Server服务器释放磁盘空间
disk.sh #!/bin/bashcd /run/sr-mount/e54f0646-ae11-0457-b64f-eba4673b824c # 全部虚拟机物理磁盘文件存储 a$(ls -l | awk {print $NF} | cut -d. -f1) # 使用中的虚拟机物理磁盘文件 b$(xe vm-disk-list --multiple | grep uuid | awk {print $NF})printf "%s\n"…...
毫米波雷达基础理论(3D+4D)
3D、4D毫米波雷达基础知识及厂商选型 PreView : https://mp.weixin.qq.com/s/bQkju4r6med7I3TBGJI_bQ 1. FMCW毫米波雷达基础知识 主要参考博文: 一文入门汽车毫米波雷达基本原理 :https://mp.weixin.qq.com/s/_EN7A5lKcz2Eh8dLnjE19w 毫米波雷达基础…...
