制作Docker镜像一般有2种方法:

  1. 使用hub仓库中已有的环境,安装自己使用的软件环境后完成image创建
  2. 通过Dockerfile,完成镜像image的创建

下面通过展示具体操作方法:

第一种:使用hub仓库中已有的环境,安装自己使用的软件环境后完成image创建。

制作自己的Docker镜像环境,里面包括:

(1)centos

(2)golang

1、docker pull centos(pull最新的centos系统)

2、docker run -it centos /bin/bash(运行进入容器)

3、在centos环境中创建work用户

[root@132aaafe685d /]# useradd work

[root@132aaafe685d /]# su - work

4、下载go的Linux安装包,解压,配置环境变量

[work@132aaafe685d ~]$ mkdir goapp && cd goapp && wget https://studygolang.com/dl/golang/go1.14.1.linux-amd64.tar.gz

[work@132aaafe685d goapp]$ tar zxvf go1.14.1.linux-amd64.tar.gz

[work@132aaafe685d goapp]$ vim ~/.bash_profile

[work@132aaafe685d go]$ source ~/.bash_profile

[work@132aaafe685d go]$ go version
go version go1.14.1 linux/amd64
[work@132aaafe685d go]$ echo $GOPATH
/home/work/goapp
[work@132aaafe685d go]$ echo $HOME

此时,go的最基础环境就算配置好了,让我们写一个go程序,运行一下吧~~~

5、go 实现"Hello World!"

[work@132aaafe685d ~]$ vim /home/work/goapp/src/main.go

6、go run main.go

[work@132aaafe685d ~]$ go run /home/work/goapp/src/main.go
Hello World!

7、docker commit -m "xxx" -a "authorName" containerID hub的名称/镜像名称:tag

8、docker commit && push到远端仓

C:UsersAdministrator>docker commit -m "centos and go env" -a "wenhan" 132aaafe685d zhangwenhan/gobox:v1
sha256:2f74c2d19210cc38da7267e5e8922dbafc1f33d9bf26ff01b27f335d9e6e8dec

C:UsersAdministrator>docker login
Authenticating with existing credentials...
Login Succeeded

9、查看https://hub.docker.com/里的个人仓,push的image已入库

10、如果要打包报错到本地

docker save -o D:DockerDesktopvm-dataDockerDesktopeboxsunny_gobox.tar zhangwenhan/gobox:v1.0

第二种:通过Dockerfile,完成镜像image的创建。

1、创建镜像所在文件夹+Dockerfile文件

(1)mkdir ebox && cd ebox
(2)touch Dockerfile

2、在Dockerfile文件中写入指令

FROM ubuntuRUN apt-get update && apt-get install -y ruby ruby-dev格式说明: 每行命令都是以 INSTRUCTION statement 形式,就是命令+ 清单的模式。命令要大写,“#”是注解。FROM 命令是告诉docker 我们的镜像什么。RUN 命令是在镜像内部执行。就是说他后面的命令应该是针对镜像可以运行的命令。

3、创建镜像

命令:docker build -t zhangwenhan/ebox:v2 .
docker build 是docker创建镜像的命令
-t 是标识新建的镜像属于 zhangwenhan的
ebox是仓库的名称
:v2 是tag
"."是用来指明 我们的使用的Dockerfile文件当前目录的

4、创建完成后,从镜像创建容器

docker run -t -i zhangwenhan/ebox:v2 /bin/bash

docker hub push_如何制作Docker镜像(image)?相关推荐

  1. 借助Docker hub自己手动制作镜像(以Nginx镜像为例)

    借助Docker hub自己手动制作镜像(以Nginx镜像为例) 前言 一.Docker hub是什么? 二.镜像制作步骤 1.进入Docker hub官网,获取源文件 2.制作镜像 3.验证镜像 总 ...

  2. Docker Hub + Github 自动化构建docker镜像

    自动创建(Automated Builds)功能对于需要经常升级镜像内程序来说,十分方便. 有时候,用户创建了镜像,安装了某个软件,如果软件发布新版本则需要手动更新镜像. 而自动创建允许用户通过Doc ...

  3. 使用Docker hub搭建并维护docker环境

    Docker hub类似于github的使用 创建Dockerhub账号 点击Dockerhub ,创建账号,必要时需要VPN. 搭建Docker 从头搭建一个Docker比较复杂,可以基于别人的do ...

  4. Kubernetes学习笔记三:Docker安装,Docker使用,编写Dockerfile,制作容器镜像,上传docker镜像

    文章目录 Docker的安装 Docker的使用:docker run命令 查看本地存在的镜像:docker images命令 编写Dockerfile,制作容器镜像 docker build制作镜像 ...

  5. 制作docker镜像

    1. 制作前准备 登录Docker Hub,https://cloud.docker.com/,申请一个账号: 申请好后,然后创建一个自己的Repository,注意Repository的命名为小写. ...

  6. Docker的使用(三:Docker Hub远程镜像管理)

    1.登录 Docker Hub: 2.修改镜像名称: 3.登录认证: 4.推送镜像: 5.查看验证:

  7. 在Docker Hub上你可以很轻松下载到大量已经容器化的应用镜像,即拉即用——daocloud国内镜像加速...

    Docker之所以这么吸引人,除了它的新颖的技术外,围绕官方Registry(Docker Hub)的生态圈也是相当吸引人眼球的地方. 在Docker Hub上你可以很轻松下载到大量已经容器化的应用镜 ...

  8. .NET Core 2.1 容器镜像将从 Docker Hub 中删除

    .NET Core 2.1 容器镜像将从 Docker Hub 中删除 Richard 2021 年 8 月 16 日 从 8 月 21 日开始,.NET Core 2.1 Docker 容器镜像将不 ...

  9. 如何将docker 镜像上传到docker hub仓库

    Python微信订餐小程序课程视频 https://edu.csdn.net/course/detail/36074 Python实战量化交易理财系统 https://edu.csdn.net/cou ...

最新文章

  1. Java中的5大队列,你知道几个?
  2. 网站集成支付宝的方法和所需资料下载
  3. 微信小程序上传图片时provisional headers are shown显示我的错误解决方案
  4. 博士生传给硕士生的经验
  5. Android通过PHP服务器实现登录
  6. 深度学习---英文名称简写大全
  7. 实体类里的内部类怎么单独赋值_java你还在用各种setter赋值初始对象吗?用设计模式化简为易...
  8. 蓝牙遥控开关c语言程序,单片机蓝牙控制开关制作(程序源码+安卓APP分享)
  9. 皖能合肥电厂电能量计量管理系统设计方案
  10. oeasy教您玩转vim - 90 - # 语法定义syntax
  11. 7行代码让B站崩溃3小时,竟因“一个诡计多端的0”
  12. nginx反向代理是什么?
  13. Arcgis更换布局模板_PPT模板到底怎么用呢?
  14. 设计模式讲解与代码实践(三)——工厂方法
  15. Linux电脑安全管家
  16. 外部波澜起伏,内心平静如常
  17. java 对比度_调整图像亮度、对比度、饱和度
  18. win ce系统如何知道u盘正版授权_从零开始的电脑系统重装
  19. Jedis远程链接阿里云Redis
  20. HBuilderX 下载git

热门文章

  1. 将深度缓冲z值变换到相机坐标系
  2. 剑指offer例题5—逆序输出链表
  3. zz从一道笔试题谈算法优化(上)
  4. 利用SuppressMessage来阻止FxCop进行代码分析时报出的警告
  5. C语言课后习题(49)
  6. 苏州大学文正学院计算机专业,苏州大学文正学院有哪些专业及什么专业好
  7. 数据库实验一(MySQL基本操作命令总结)
  8. Scrum Master们,难道每天都在摸鱼?
  9. 以两种异步模型应用案例,深度解析Future接口
  10. 华为云张昆:支持全场景全业务,GaussDB加速企业数字化转型