日常使用场景

场景1:将自己的镜像从hub中拉取,并压缩成tar.gz文件

# 首先拉取镜像
docker pull docker.images.hub/{namespace}/{servicename}:{version}
# 给镜像重新打tag
docker tag docker.images.hub/{namespace}/servicename {servicename}:{image_tag}
# 生成tar镜像文件
docker save -o {servicename}.tar {servicename}:{image_tag}
# 将tar压缩成tar.gz文件
pigz -p 16 {servicename}.tar

场景2:上传镜像到hub中

# 首先登录自己的账号(要先hub.docker.com官网注册账号,并新建一个仓库Repositories)
docker login -u
# 给镜像重新打tag
docker tag local-image:tag_name new-repo:tag_name
# 将镜像推到hub
docker push new-repo:tag_name

场景3:加载tar.gz镜像,并push到hub中

# 上传tar.gz的包,并加载
docker load < mymysql.tar.gz
# 或者
docker load -i mymysql.tar.gz # 给镜像重新打tag
docker tag mymysql:22.2.rc1 cavan520/mymysql:22.2.rc1 # 将镜像推到hub
docker push cavan520/mymysql:22.2.rc1

场景4:排查镜像问题

可以通过加--entrypoint /bin/sh 覆盖里面的启动命令 这个即使是服务启动不了,也能顺利进入容器里面 这样就可以很好得排查问题

docker run -it --entrypoint bash 81399a2859fa

排查完后,删除运行中的容器

docker ps -a
docker rm 81399a2859fa

场景5:向dockerfile文件中传入参数

可以通过加--build-arg 添加参数

docker build --build-arg BASE_VERSION="${base_version}" -f Dockerfile -t mymysql:22.2.rc1 . || {
echo "build image for mymysql failed! "
exit 1
}

Dockerfile中通过ARG BASE_VERSION接收参数

遇到的问题

1、denied: requested access to the resource is denied

上面的信息显示是拒接访问,因为tag的名字不包含本人的用户名,下面把它修改为mydockerhubname/xxxxx再push成功。需要注意的是mydockerhubname是本人的docker用户名。

解决方法:

在给镜像重新打tag时,改成docker hub对应的用户名下。例如我的账户名:cavan520,重新打完tag再push上去,成功了

然后进入docker hub网站查看,发现多了一个repository(就是你push上来的)。

docker日常使用操作场景的更多相关文章

  1. docker日常使用指南

    docker日常使用指南 目录 docker日常使用指南 前言 1.基础知识 1.1 docker是什么 1.2 与虚拟机(VM)的区别 1.3 镜像与容器 2.安装 2.1 在线安装 2.2 离线安 ...

  2. 关于 Docker 镜像的操作,看完这篇就够啦 !(下)

    紧接着上篇<关于 Docker 镜像的操作,看完这篇就够啦 !(上)>,奉上下篇 !!! 镜像作为 Docker 三大核心概念中最重要的一个关键词,它有很多操作,是您想学习容器技术不得不掌 ...

  3. Docker入门 - 002 Docker 的简单操作

    系统要求:CentOS 7.2 64 位操作系统. Docker 的简单操作 下载镜像 下载一个官方的 CentOS 镜像到本地 docker pull centos 下载好的镜像就会出现在镜像列表里 ...

  4. Docker技术这些应用场景【转】

    场景一:节省项目环境部署时间 1.单项目打包 每次部署项目到测试.生产等环境,都要部署一大堆依赖的软件.工具,而且部署期间出现问题几率很大,不经意就花费了很长时间. Docker主要理念就是环境打包部 ...

  5. Docker学习总结(11)——八个Docker的真实应用场景

    [编者的话]Flux 7介绍了常用的8个Docker的真实使用场景,分别是简化配置.代码流水线管理.提高开发效率.隔离应用.整合服务器.调试能力.多租户环境.快速部署.我们一直在谈Docker,Doc ...

  6. docker 基本常用操作做

    docker 基本常用操作做(只列举入门常用的命令) 容器生命周期管理 docker run :创建一个新的容器并运行一个命令 -a stdin: 指定标准输入输出内容类型,可选 STDIN/STDO ...

  7. git——日常保险操作

    git fetch --all //拉取远程最新代码 git reset --hard origin/master //如果本地无法更新,使用远程覆盖本地 git branch old_master ...

  8. 安装docker以及常规操作

    一.安装 docker对内核版本是有要求的,反正建议用7以上的版本,少坑 如果需要卸载旧版本(凡是卸载删除操作都要谨慎!): yum remove docker \ docker-client \ d ...

  9. git使用记录七:对工作区和暂存区的一些操作场景

    比较暂存区和HEAD所含文件的差异? 操作场景如下: 修改readme.md 文档 vi readme.md 加入到暂存区域 git add readme.md 使用git diff -cached ...

  10. Docker.[4].容器操作.

    Docker.[4].容器操作. 熟悉的指令: 启动容器 docker run 交互式启动容器 docker run -i -t IMAGENAME /bin/bash 停止容器 exit 停止容器 ...

随机推荐

  1. vue 插件(swiper)使用

    两种方法: 1... 打开https://www.swiper.com.cn/download/index.html 下载css,js... 把js,css引入public里面的index.html文 ...

  2. 力扣570(MySQL)-至少有5名直接下属的经理(简单)

    题目: Employee 表包含所有员工和他们的经理.每个员工都有一个 Id,并且还有一列是经理的 Id. 给定 Employee 表,请编写一个SQL查询来查找至少有5名直接下属的经理.对于上表,您 ...

  3. 力扣504(java)-七进制数(简单)

    题目: 给定一个整数 num,将其转化为 7 进制,并以字符串形式输出. 示例 1: 输入: num = 100输出: "202"示例 2: 输入: num = -7输出: &qu ...

  4. 动态尺寸模型优化实践之Shape Constraint IR Part II

    简介: 在本系列分享中我们将介绍BladeDISC在动态shape语义下做性能优化的一些实践和思考.本次分享的是我们最近开展的有关shape constraint IR的工作,Part II 中我们将 ...

  5. 龙蜥开源Plugsched:首次实现 Linux kernel 调度器热升级 | 龙蜥技术

    ​简介:对于plugsched而言,无论是 bugfix,还是性能优化,甚至是特性的增.删.改,都可胜任. ​ 文/龙蜥社区内核开发人员 陈善佩.吴一昊.邓二伟 Plugsched 是 Linux 内 ...

  6. Flink 1.12 资源管理新特性回顾

    简介: 介绍 Flink 1.12 资源管理的一些特性,包括内存管理.资源调度.扩展资源框架. 本文由社区志愿者陈政羽整理,Apache Flink Committer.阿里巴巴技术专家宋辛童,Apa ...

  7. AI运动:阿里体育端智能最佳实践

    简介: 过去一年,阿里体育技术团队在端智能方面不断探索,特别在运动健康场景下实现了实践落地和业务赋能,这就是AI运动项目.AI运动项目践行运动数字化的理念,为运动人口的上翻提供了重要支撑,迈出了阿里体 ...

  8. [Go] CORS 支持多个 origin 访问的思路 (Access-Control-Allow-Origin 部分)

    以下为局部伪代码,仅供参考: var allowOrigin string allowOrigins := config.AppConf.Get("middleware.cors.allow ...

  9. VisualStudio 如何快速添加一个 Git Tag 推送

    在 VisualStudio 的团队管理功能,提供了方便的添加 Tag 的方法,可以新建一个 Tag 添加 Tag 信息,同时推送某个特定的 Tag 到服务器.配合推 Tag 打包 NuGet 的方法 ...

  10. Java设计模式-观察者模式-SpringBoot实现

    观察者模式 项目:https://gitee.com/KakarottoChen/blog-code.git 的:JavaSpringListener 一.Java观察者模式 Java观察者模式是一种 ...