当前位置: 首页 > news >正文

docker registry push 覆盖_docker容器和镜像操作 - 恋恋风辰

基于本地模板导入镜像

假如本地有一个ubuntu系统模板压缩包, 可以通过import导入生成新的镜像

cat ubuntu-18.04.tar.gz | docker import - ubuntu:18.04

存出和导入镜像 

存出镜像

docker save -o ubuntu-18.04.tar  ubuntu:18.04

导入镜像

docker load -i ubuntu-18.04.tar

导出容器 

docker export -o ce.tar ce5

导入容器

docker import ce.tar - ce:v1.0

查看容器内进程

docker私有仓库

先拉取registry镜像

根据registry启动镜像,构造仓库

docker run -d -p 5000:5000 -v /opt/data/registry:/var/lib/registry  registry

然后我们查看本地有哪些镜像,随便选择一个推送上去 

选择一个mongo,我们打个tag,tag前面要写上我们服务器地址和仓库端口号 

docker tag mymongo:latest /mymongo

推送到私有仓库 

docker push /mymongo

如果出现了http错误,请修改/etc/docker/文件

"insecure-registries": [""]

然后重启docker服务

sudo systemctl daemon-reload
sudo systemctl restart docker.service
sudo systemctl enable docker.service

重启docker 

docker restart $(docker ps -aq)

这样再次push就可以将镜像push到docker私有仓库了。

利用容器卷备份和迁移数据

1 备份,可以将数据备份至挂在目录,这样外界就可以访问并获取了。
用ubuntu镜像启动一个新的容器worker,该容器和dbdata容器共享卷, worker启动后将/dbdata下的数据打包放在/backup下

docker run --volumes-from dbdata -v $(pwd):/backup --name worker ubuntu tar cvf /backup/ /dbdata

2 还原
启动一个容器,挂在/dbdata目录

docker run -v /dbdata  --name  dbdata2 ubuntu /bin/bash

再用ubuntu 启动一个新的镜像,共享dbdata2容器的卷

docker run --volume-from dbdata2 -v $(pwd):/backup busybox tar xvf /backup/ 

docker 设置ssh

1 拉取ubuntu镜像

2 启动ubuntu容器,将22端口映射为1022端口 

docker run -it  -p 1022:22  ubuntu:18.04

3 在容器中安装如下应用 

apt-get update
apt-get upgrade
apt-get install vim
apt-get install openssh-server
apt-get install net-tools

然后vim /etc/ssh/sshd_config 

将PermitRootLogin设置为yes
创建文件夹

然后启动服务 

这时我们查看网路端口 

可以看到22端口启动了 

为了让容器启动时可以自启动ssh服务,我们实现一个脚本
vim /添加如下

#!/bin/bash
/usr/sbin/sshd -D

然后赋予这个脚本执行权限 

然后exit退出,基于改造的docker提交新的镜像 

docker commit cafd85cb0645 ubuntu:ssh

然后我们基于这个镜像启动新的容器 

docker run  -d  --name ubuntu-ssh -p 1022:22 ca1a463f5c99 /

因为ssh登录需要账户名和密码,账户名为root,密码我们进入容器设置下 

docker exec -it 28afa8e39353 /bin/bash
passwd

安装后输入passwd,设置密码. 

之后通过ssh连接就可以了

ssh root@172.98.23.45 -p 1022  

感谢关注公众号

1d26014c00d169a2f37e041bb46ca4fb.png

相关文章:

  • ps游戏在什么系统下开发_短视频系统开发有什么优势?
  • 怎么将一个网页作为另一个网页的背景_2020年网页设计的主流趋势有哪些?
  • iphone投屏_苹果手机怎么投屏?
  • 关于电脑的基础知识_quot;蜀星云教quot;助力2020年武侯区中小学电脑制作活动教师培训第四期...
  • 苹果ppt_我用PPT复制了苹果官网的动画!
  • 排查链接是否失效_制砂机定期润滑却出现润滑失效?什么原因?怎么处理?附油箱常见的3个故障及解决办法...
  • bootstrap4 p-_一起来学习Bootstrap4!(下)
  • python contains类似函数_Python爬虫系列之解析库详解
  • gradle 构建完成自动删除_【翻译】使用Gradle脚本为每次构建自动生成唯一的构建版本号
  • python2转python3代码_python 内置2to3工具将python2代码转换为python3代码
  • python装饰器实现单例模式_Python中的单例模式——装饰器实现剖析
  • python图像边缘检测报告_python数字图像处理(三)边缘检测常用算子
  • jsp value设置为函数的返回值_QT中的消息传递与函数回调机制:信号(signal)和槽(slot)...
  • python exit 0_详解python中 os._exit() 和 sys.exit(), exit(0)和exit(1) 的用法和区别
  • python内置数据结构_python 内置数据结构之列表
  • CEF与代理
  • conda常用的命令
  • js面向对象
  • Python爬虫--- 1.3 BS4库的解析器
  • React-生命周期杂记
  • spring-boot List转Page
  • uni-app项目数字滚动
  • Wamp集成环境 添加PHP的新版本
  • 基于axios的vue插件,让http请求更简单
  • 前嗅ForeSpider采集配置界面介绍
  • 如何使用 JavaScript 解析 URL
  • 问:在指定的JSON数据中(最外层是数组)根据指定条件拿到匹配到的结果
  • 一个完整Java Web项目背后的密码
  • ​力扣解法汇总1802. 有界数组中指定下标处的最大值
  • # 透过事物看本质的能力怎么培养?
  • #我与Java虚拟机的故事#连载19:等我技术变强了,我会去看你的 ​
  • (1)bark-ml
  • (1)安装hadoop之虚拟机准备(配置IP与主机名)
  • (10)Linux冯诺依曼结构操作系统的再次理解
  • (Pytorch框架)神经网络输出维度调试,做出我们自己的网络来!!(详细教程~)
  • (ZT)薛涌:谈贫说富
  • (三) diretfbrc详解
  • (十五)devops持续集成开发——jenkins流水线构建策略配置及触发器的使用
  • (十五)Flask覆写wsgi_app函数实现自定义中间件
  • (一)插入排序
  • (一)使用IDEA创建Maven项目和Maven使用入门(配图详解)
  • (原創) 人會胖會瘦,都是自我要求的結果 (日記)
  • .net 4.0 A potentially dangerous Request.Form value was detected from the client 的解决方案
  • .net 4.0发布后不能正常显示图片问题
  • .net MVC中使用angularJs刷新页面数据列表
  • .NET国产化改造探索(三)、银河麒麟安装.NET 8环境
  • .NET开发人员必知的八个网站
  • .net项目IIS、VS 附加进程调试
  • @JsonSerialize注解的使用
  • []串口通信 零星笔记
  • [100天算法】-目标和(day 79)
  • [BZOJ2850]巧克力王国
  • [Docker]十一.Docker Swarm集群raft算法,Docker Swarm Web管理工具
  • [HTML]Web前端开发技术12(HTML5、CSS3、JavaScript )——喵喵画网页
  • [Invalid postback or callback argument]昨晚调试程序时出现的问题,MARK一下