构建自定义docker镜像,上传至docker hub
docker 优势 (外部参考)
Docker 让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后
发布到任何流行的Linux机器上,便可以实现虚拟化。Docker改变了虚拟化的方
式,使开发者可以直接将自己的成果放入Docker中进行管理。方便快捷已经是
Docker的最大优势,过去需要用数天乃至数周的任务,在Docker容器的处理下,只需要数秒就能完成。
安装docker(请参考外部链接)
[Ubuntu Docker 安装](http://www.runoob.com/docker/ubuntu-docker-install.html)
[CentOS Docker 安装](http://www.runoob.com/docker/centos-docker-install.html)
[Windows Docker 安装](http://www.runoob.com/docker/windows-docker-install.html)
[MacOS Docker 安装](http://www.runoob.com/docker/macos-docker-install.html)
本次构建自定义docker镜像流程
我们可以通过以下两种方式对镜像进行更改。
* 从已经创建的容器中更新镜像,并且提交这个镜像(本次使用)
* 使用 Dockerfile 指令来创建一个新的镜像(新手不推荐)
1.下载官方centos镜像(本次已centos做实例)
2.运行这个容器 docker run -i -t centos /bin/bash
[见图1]
参数说明
* -t:在新容器内指定一个伪终端或终端。
* -i:允许你对容器内的标准输入 (STDIN) 进行交互。
3.提交一个 docker commit -m="richard server" -a="zhuzhida" b3a4179ec677 richard/centos:v1
[见图1]
各个参数说明:
-m:提交的描述信息
-a:指定镜像作者
b3a4179ec677:容器ID
richard/centos:v1:指定要创建的目标镜像名
图1
4.进入自己定义的镜像中安装自己所需 相应软件
安装nginx教程 https://www.cnblogs.com/liujuncm5/p/6713784.html
安装 MongoDB 。。。等软件
安装完成后 ctrl+ d 退出伪终端
将容器转化为镜像 执行命令 `docker commit -m="added nginx+mongdb+git+node" -a="zhuzhida" ca5ca7798a24 richard/centos:v4`
ca5ca7798a24 为 docker ps -a 中的伪终端 值
5.提交到docker hub
在docker hub 上创建 账号密码 并创建仓库 [见图5]
给镜像打标签 镜像打标签后才可以进行push [见图6]
`docker tag <existing-image> <hub-user>/<repo-name>[:<tag>]`
登录 `docker login` push 镜像 [见图6]
图5 在docker hub 上创建 账号密码 并创建仓库
图6 给镜像打标签,登录上传
6.登录docker hub 发现已经上传成功
下篇 在服务器上安装 docker hub 中的私有镜像
参考文章
https://www.jianshu.com/p/dd364b59b774 https://www.jianshu.com/p/fb237c7eb48c https://blog.csdn.net/Prepared/article/details/68940997?locationNum=10&fps=1
构建自定义docker镜像,上传至docker hub的更多相关文章
- 如何将docker 镜像上传到docker hub仓库
如何将docker 镜像上传到docker hub仓库 目录 如何将docker 镜像上传到docker hub仓库 背景 1.注册docker hub账号 2.docker hub上创建仓库 3.d ...
- Docker 镜像上传到docker hub仓库
1 先创建docker hub 帐号 ,并创建仓库 https://hub.docker.com/ 首先你需要一个docker hub 帐号,记住username,password,email .后面 ...
- 将docker镜像上传到docker hub
- 本地docker镜像上传到腾讯云镜像仓库。
和上篇上传到Docker Hub类似,只是登录时切换成腾讯云镜像仓库地址(ccr.ccs.tencentyun.com/longdbtencentdocker/publongdb)即可. docker ...
- jenkins构建docker镜像上传到harbor并发布到kubernetes
很早之前写过一篇jenkins集成docker的文章,使用的是CloudBees Docker Build and Publish plugin插件.这篇文章是直接使用shell脚本做的,主要是这次有 ...
- docker镜像上传到阿里云
目前上传本地镜像到网上有多种途径,一个是上传到hub上,一个是阿里云镜像仓库,还要其他服务器. 上传到hub上实在是太慢了,我的服务器用的是阿里云,所以选择上传到阿里云镜像仓库中. 前提条件:linu ...
- 将本地镜像上传到Docker镜像仓库
⒈在Docker Hub(Docker官方镜像仓库)注册自己的用户名. ⒉在Docker中使用docker login命令登录自己的用户名密码. ⒊使用docker push 镜像名称 上传本地镜像到 ...
- 本地docker镜像上传Docker Hub,并且在腾讯云上pull该镜像,最后运行成功。
1:在docker hub 上注册一个账号(本人直接能注册,有的说不能),然后创建自己的仓库. 2:登录docker hub ( longdbdocker --hub账号,longdb --仓库名称) ...
- Docker 如何把镜像上传到docker hub
1 首先你得准备一个hub 的帐号, 去 https://hub.docker.com 注册吧! 2 在hub那里新建一个仓库, 这个就类似于github那边的..create ---> cre ...
- docker镜像上传阿里云仓库
推送至阿里云镜像:1.首先在阿里云上选择容器镜像服务,创建命名空间以及镜像仓库2. docker login --username=zhangshitongsky@163.com registry.c ...
随机推荐
- docker-compose使用备忘(转)
Docker-Compose简介 Docker-Compose项目是Docker官方的开源项目,负责实现对Docker容器集群的快速编排. Docker-Compose将所管理的容器分为三层,分别是工 ...
- Java并发专题(三)深入理解volatile关键字
前言 上一章节简单介绍了线程安全以及最基础的保证线程安全的方法,建议大家手敲代码去体会.这一章会提到volatile关键字,虽然看起来很简单,但是想彻底搞清楚需要具备JMM.CPU缓存模型的知识.不要 ...
- DSAPI TreeView节点增删简化操作
将一行或多行字符串添加到TreeView控件. 函数: 控件.TreeView控件.添加路径节点到TreeView(要添加节点的TreeView控件,字符串或字符串数组) 示例:将一个多行文本添加到T ...
- .NET Core: 在.NET Core中进行单元测试
单元测试能够帮助开发人员确保所开发的模块.类以及类中的方法等的正确性,在项目开发过程中,及时进行单元测试能够避免不必要的BUG以及提高测试效率. 在本文中,我们会分别来学习如何使用MSTest.xUn ...
- VSCode瞎折腾记
搬到小机房后终于能用VSCode啦(没错以前的系统是xp) 但是这东西比Dev难搞多了qwq,简单记一下自己的DIY历程吧(不然全搞炸就凉了) 设置语言为中文 可以直接下载插件 让VSCode支持编译 ...
- npm --save-dev --save 的区别
我们在使用npm install 安装模块或插件的时候,有两种命令把他们写入到 package.json 文件里面去,比如: --save-dev(-D) --save(-S) 在 package.j ...
- Web后端 JAVA实现验证码生成与验证功能
首先,写一个验证码生成帮助类,用来绘制随机字母: <span style="font-size:14px;">import java.awt.Color; impor ...
- javascript排序算法-快速排序
快速排序 概念: (1) 首先,从数组中选择中间一项作为主元. (2) 创建两个指针,左边一个指向数组第一个项,右边一个指向数组最后一个项.移动左指针直到我们找到一个比主元大的元素,接着,移动右指针直 ...
- Add In 简介(主要翻译于ESRI官方文档)
为ArcGIS桌面端建立Add In插件 平时以工作为主,有空时翻译一些文档,顺便练习英文,这个是因为用Add In来学习一下. 主要包括: 关于Add In 什么时候使用Add In Python ...
- (办公)springboot配置全局异常
项目用到了springboot,本来很高兴,但是项目里什么东西都没有,验证,全局异常这些都需要自己区配置.最近springboot用的还是蛮多的,我还是做事情,把经验发表一下.全局统一的异常,首先异常 ...