Docker自定义镜像并推送到dockerhub

  • 一、B要条件
  • 二、选择一个操作系统作为基础环境
  • 三、创建dockerfile
  • 四、使用dockerfile构建自己的docker镜像
  • 五、定义要推送的标签
  • 六、给docker配置代理(docker.io网址无法直接访问)
  • 七、登录docker账号
  • 八、推送镜像到dockerhub
  • 九、结局圆满,此致敬礼
  • 十、启动镜像环境

一、B要条件

  1. 能正常访问docker.io
  2. 在hub.docker.com网址注册账户

二、选择一个操作系统作为基础环境

本文使用rockylinux/rockylinux:8.5

三、创建dockerfile

其中rockylinux/rockylinux:8.5crazy.pig请替换成自己的镜像基础和自己的名字

[root@vr8 ray]# mkdir docker_build
[root@vr8 ray]# cd docker_build/
[root@vr8 docker_build]# clear
[root@vr8 docker_build]# ls
[root@vr8 docker_build]# cat >> dockerfile << EOF
> FROM rockylinux/rockylinux:8.5
> MAINTAINER crazy.pig
> EOF
[root@vr8 docker_build]# ll
总用量 4
-rw-r--r--. 1 root root 52 1月  26 10:40 dockerfile
[root@vr8 docker_build]# cat dockerfile
FROM rockylinux/rockylinux:8.5
MAINTAINER crazy.pig

四、使用dockerfile构建自己的docker镜像

[root@vr8 docker_build]# docker build -t customize-rocky:v8.5 .
Sending build context to Docker daemon  2.048kB
Step 1/2 : FROM rockylinux/rockylinux:8.5
8.5: Pulling from rockylinux/rockylinux
72a2451028f1: Pull complete
Digest: sha256:2fb0499bf87069010e5d5ba1d44cee1504f9f87b9e5889f7d885c325cdc71967
Status: Downloaded newer image for rockylinux/rockylinux:8.5---> a1e37a3cce8f
Step 2/2 : MAINTAINER crazy.pig---> Running in 95239220d111
Removing intermediate container 95239220d111---> 40fc2a6b4bac
Successfully built 40fc2a6b4bac
Successfully tagged customize-rocky:v8.5

查看构建结果

[root@vr8 docker_build]# docker images
REPOSITORY                      TAG                 IMAGE ID       CREATED         SIZE
customize-rocky                 v8.5                40fc2a6b4bac   4 minutes ago   205MB

五、定义要推送的标签

因为本地的customize镜像我还要进行多种环境的构建,所以在dockerfile中没有一次性使用生产标签来定义,而在推送前进行标签的确定。所以有这一步。docker tag命令指定的repository请一定要使用自己在docker网站上注册的用户名来定义。例如:下面命令中的crazyrayshi就是我的用户名。

[root@vr8 docker_build]# docker tag customize-rocky:v8.5 crazyrayshi/customize-rocky:v8.5
[root@vr8 docker_build]# docker images
REPOSITORY                      TAG                 IMAGE ID       CREATED          SIZE
crazyrayshi/customize-rocky     v8.5                40fc2a6b4bac   29 minutes ago   205MB
customize-rocky                 v8.5                40fc2a6b4bac   29 minutes ago   205MB

六、给docker配置代理(docker.io网址无法直接访问)

[root@vr8 docker_build]# sudo mkdir -p /etc/systemd/system/docker.service.d
[root@vr8 docker_build]# cat >> /etc/systemd/system/docker.service.d/proxy.conf << EOF
> [Service]
> Environment="HTTP_PROXY=http://192.168.56.1:10809/"
> Environment="HTTPS_PROXY=http://192.168.56.1:10809/"
> Environment="NO_PROXY=localhost,127.0.0.1,192.168.56.0/24"
> EOF
[root@vr8 ray]# systemctl daemon-reload
[root@vr8 ray]# service docker restart

七、登录docker账号

请一定确保Login Succeeded出现

[root@vr8 docker_build]# docker login
Login with your Docker ID to push and pull images from Docker Hub. If you don't have a Docker ID, head over to https://hub.docker.com to create one.
Username: crazyrayshi
Password:
WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-storeLogin Succeeded

八、推送镜像到dockerhub

[root@vr8 docker_build]# docker push crazyrayshi/customize-rocky:v8.5
[root@vr8 ray]# docker push crazyrayshi/customize-rocky:v8.5
The push refers to repository [docker.io/crazyrayshi/customize-rocky]
65dbea0a4b39: Pushed
v8.5: digest: sha256:6c7930d9d5d1afc378274a93086590c959dcb8f3bc4b375c04b0ed09529aae99 size: 529

九、结局圆满,此致敬礼

十、启动镜像环境

[root@vr8 ray]# docker run -dti --name rockylinux -v /data/lfs:/data/lfs crazyrayshi/customize-rocky:v8.5
2e5a65c2df8d1565993ff0abd551506eddaed3d4174abb8b0069082a566ef7e7
[root@vr8 ray]# docker ps -a
CONTAINER ID   IMAGE                              COMMAND                  CREATED         STATUS                      PORTS    NAMES
2e5a65c2df8d   crazyrayshi/customize-rocky:v8.5   "/bin/bash"              3 seconds ago   Up 3 seconds                         rockylinux
[root@vr8 ray]# docker exec -it rockylinux /bin/bash
[root@2e5a65c2df8d /]# cat /etc/redhat-release
Rocky Linux release 8.5 (Green Obsidian)

使用dockerfile自定义Docker镜像并推送到dockerhub相关推荐

  1. Java Spring Boot 2.0 实战之制作Docker镜像并推送到Docker Hub和阿里云仓库

    内容摘要:大规模集群快速部署Java应用,需要制作Docker镜像,本次课程详细介绍如何制作Java程序的Docker镜像文件,深入解析DockerFile核心参数,以及实践演练把我们制作的Docke ...

  2. Maven编译Docker 镜像并推送到Nexus

    前提条件: 有一台电脑 安装了maven 安装了jdk1.8 以上版本 安装了 git 安装了intellij idea 电脑能上网 有一台nexus 服务器,如果没有可以参考我的另一篇文章:Sona ...

  3. 1.2 SpringBoot构建Docker镜像并推送到Harbor

    1.修改pom 文件中 引入 dockerfile-maven-plugin 插件 1.1 properties 标签中增加如下: <!--项目名,需要和Harbor中的项目名称保持一致 --& ...

  4. springboot构建docker镜像并推送到阿里云

    1.构建springboot项目 工程目录如下 欢迎关注个人公众号[好好学技术]交流学习 UserController package com.fandf.test.controller; impor ...

  5. 使用maven插件构建docker镜像并推送到阿里镜像仓库

    1.阿里云镜像仓库 阿里云提供了docker镜像仓库,可以上传私有的镜像 2.com.spotify 提供的docker构建插件 docker-maven-plugin <plugin>& ...

  6. Docker之使用maven插件【Dockerfile方式】构建并推送镜像到私有仓库

    准备工作 操作系统版本 [root@node02 ~]# cat /etc/redhat-release CentOS Linux release 7.5.1804 (Core) docker版本 [ ...

  7. 网易蜂巢 mysql镜像_在网易蜂巢的容器中创建自定义镜像和推送本地镜像的教程...

    Dockerfile 创建自定义镜像1.  登录蜂巢控制台:https://c.163.com/dashboard 2.  点击左侧导航菜单的「镜像仓库」标签: 3.  点击镜像仓库列表左上角的「创建 ...

  8. maven集成docker插件进行打包镜像并推送私服

    使用maven进行集成docker打包成镜像以及推送到docker私服 先水几句 我不会开场啊-默默无闻的送码人.不是吧不是吧.现在还有人用maven打包,然后手动上传jar.然后进行部署吗?你out ...

  9. IDEA中使用Docker插件构建镜像并推送至私服Harbor

    IDEA中使用Docker插件构建镜像并推送至私服Harbor 一.开启Docker服务器的远程访问 1.1 开启2375远程访问 1.2 添加harbor镜像配置 1.3 重启docker服务 二. ...

最新文章

  1. 盘神 Pandownload 复活
  2. 接口抽象类继承父类和子类
  3. python网络爬虫之requests模块
  4. 验证用户输入的是不是中文名字 淘宝精品案例 元素样式设置的方式 链式编程
  5. Linux export 命令用法
  6. 使用SAT跟踪监控从浏览器打开的SAP应用的性能和调用栈
  7. ios模拟器的路径-打开沙盒路径
  8. oracle sqlplus使用
  9. java中使用es精准查询_使用ES简单查询语句须知
  10. Oracle中关于并集/交集/差集的运算
  11. 【Kibana】FATAL Error: [config validation of [elasticsearch].url]: definition for this key is missing
  12. 远程桌面无法复制粘贴传输文件解决办法
  13. 如何用Java分配一段连续的1G的内存空间?需要注意些什么?
  14. 洛谷P4572 [JSOI2013] 哈利波特与死亡圣器
  15. MySQL 优化思路与工具
  16. 3DMAX一键生成螺母和螺栓插件使用教程
  17. 导入mdf文件的两种方法
  18. 八个常见Java项目,献给初学编程的你!
  19. 超人气代码格式化工具prettier
  20. 静态英雄联盟轮播图布局

热门文章

  1. 今天15:00| ICML专场四,7位PhD来袭!
  2. 《云南虫谷》不还原?到底好不好看?鬼吹灯观影顺序是啥?
  3. 基于MATLAB的有噪声语音信号处理
  4. 微信小程序项目源码SSM美容预约+后台管理系统|前后分离VUE含论文+PPT+源码
  5. jquery基础框架
  6. android调用在线天气服务,android通过google api获取天气信息示例
  7. 成为设计师10年后的经验心得
  8. 华为禁止系统更新的方法
  9. 全球智慧城市政府50强排行榜——中国九个城市成功跻身
  10. YOLOv5报错AssertionError:Label class 1 exceeds nc=1 in yolo/dataset.ymal Possible class labels are 0-0