使用dockerfile自定义Docker镜像并推送到dockerhub
Docker自定义镜像并推送到dockerhub
- 一、B要条件
- 二、选择一个操作系统作为基础环境
- 三、创建dockerfile
- 四、使用dockerfile构建自己的docker镜像
- 五、定义要推送的标签
- 六、给docker配置代理(docker.io网址无法直接访问)
- 七、登录docker账号
- 八、推送镜像到dockerhub
- 九、结局圆满,此致敬礼
- 十、启动镜像环境
一、B要条件
- 能正常访问docker.io
- 在hub.docker.com网址注册账户
二、选择一个操作系统作为基础环境
本文使用rockylinux/rockylinux:8.5
三、创建dockerfile
其中rockylinux/rockylinux:8.5
和crazy.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相关推荐
- Java Spring Boot 2.0 实战之制作Docker镜像并推送到Docker Hub和阿里云仓库
内容摘要:大规模集群快速部署Java应用,需要制作Docker镜像,本次课程详细介绍如何制作Java程序的Docker镜像文件,深入解析DockerFile核心参数,以及实践演练把我们制作的Docke ...
- Maven编译Docker 镜像并推送到Nexus
前提条件: 有一台电脑 安装了maven 安装了jdk1.8 以上版本 安装了 git 安装了intellij idea 电脑能上网 有一台nexus 服务器,如果没有可以参考我的另一篇文章:Sona ...
- 1.2 SpringBoot构建Docker镜像并推送到Harbor
1.修改pom 文件中 引入 dockerfile-maven-plugin 插件 1.1 properties 标签中增加如下: <!--项目名,需要和Harbor中的项目名称保持一致 --& ...
- springboot构建docker镜像并推送到阿里云
1.构建springboot项目 工程目录如下 欢迎关注个人公众号[好好学技术]交流学习 UserController package com.fandf.test.controller; impor ...
- 使用maven插件构建docker镜像并推送到阿里镜像仓库
1.阿里云镜像仓库 阿里云提供了docker镜像仓库,可以上传私有的镜像 2.com.spotify 提供的docker构建插件 docker-maven-plugin <plugin>& ...
- Docker之使用maven插件【Dockerfile方式】构建并推送镜像到私有仓库
准备工作 操作系统版本 [root@node02 ~]# cat /etc/redhat-release CentOS Linux release 7.5.1804 (Core) docker版本 [ ...
- 网易蜂巢 mysql镜像_在网易蜂巢的容器中创建自定义镜像和推送本地镜像的教程...
Dockerfile 创建自定义镜像1. 登录蜂巢控制台:https://c.163.com/dashboard 2. 点击左侧导航菜单的「镜像仓库」标签: 3. 点击镜像仓库列表左上角的「创建 ...
- maven集成docker插件进行打包镜像并推送私服
使用maven进行集成docker打包成镜像以及推送到docker私服 先水几句 我不会开场啊-默默无闻的送码人.不是吧不是吧.现在还有人用maven打包,然后手动上传jar.然后进行部署吗?你out ...
- IDEA中使用Docker插件构建镜像并推送至私服Harbor
IDEA中使用Docker插件构建镜像并推送至私服Harbor 一.开启Docker服务器的远程访问 1.1 开启2375远程访问 1.2 添加harbor镜像配置 1.3 重启docker服务 二. ...
最新文章
- 盘神 Pandownload 复活
- 接口抽象类继承父类和子类
- python网络爬虫之requests模块
- 验证用户输入的是不是中文名字 淘宝精品案例 元素样式设置的方式 链式编程
- Linux export 命令用法
- 使用SAT跟踪监控从浏览器打开的SAP应用的性能和调用栈
- ios模拟器的路径-打开沙盒路径
- oracle sqlplus使用
- java中使用es精准查询_使用ES简单查询语句须知
- Oracle中关于并集/交集/差集的运算
- 【Kibana】FATAL Error: [config validation of [elasticsearch].url]: definition for this key is missing
- 远程桌面无法复制粘贴传输文件解决办法
- 如何用Java分配一段连续的1G的内存空间?需要注意些什么?
- 洛谷P4572 [JSOI2013] 哈利波特与死亡圣器
- MySQL 优化思路与工具
- 3DMAX一键生成螺母和螺栓插件使用教程
- 导入mdf文件的两种方法
- 八个常见Java项目,献给初学编程的你!
- 超人气代码格式化工具prettier
- 静态英雄联盟轮播图布局
热门文章
- 今天15:00| ICML专场四,7位PhD来袭!
- 《云南虫谷》不还原?到底好不好看?鬼吹灯观影顺序是啥?
- 基于MATLAB的有噪声语音信号处理
- 微信小程序项目源码SSM美容预约+后台管理系统|前后分离VUE含论文+PPT+源码
- jquery基础框架
- android调用在线天气服务,android通过google api获取天气信息示例
- 成为设计师10年后的经验心得
- 华为禁止系统更新的方法
- 全球智慧城市政府50强排行榜——中国九个城市成功跻身
- YOLOv5报错AssertionError:Label class 1 exceeds nc=1 in yolo/dataset.ymal Possible class labels are 0-0