本文计划:

  • 一.安装Docker(Centos)
  • 二.注册Docker官网帐号
  • 三.下载基础centos镜像,安装需要的软件和环境后,push到自己的repository

一.安装Docker(Centos)

https://fedoraproject.org/wiki/EPEL#How_can_I_use_these_extra_packages.3F 中选择自己的epel源.

接着,安装docker-io:

$ sudo yum install docker-io

启动Docker daemon:

$ sudo service docker start

将Docker设置成开机启动:

$ sudo chkconfig docker on

下载最新的基础centos:

$ sudo docker pull centos:latest

测试centos是否可以运行成功:

$ sudo docker images centos

二.注册Docker官网帐号

注册自己的Docker仓库帐号,作用相当于开辟一个image仓库,等同于GitHub:

https://hub.docker.com/account/signup/

三.下载别人的image,作出修改后,push到自己的repository

下面举个例子,我在image:centos中安装wget后,提交到自己的repository:

进入操作界面

[root@ ~]# sudo docker run -i -t centos /bin/bash

bash-4.2#

安装wget,安装结束后退出:

bash-4.2# yum install wget

bash-4.2#exit

查看自己的修改记录:

[root@ ~]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
5f962b864221 centos:latest /bin/bash minutes ago Exited () seconds ago goofy_mcclintock
36f07f440c17 centos:latest /bin/bash minutes ago Exited () minutes ago boring_kowalevski
38e000fbee87 centos:latest /bin/bash minutes ago Exited () minutes ago sleepy_yonath

可以看到,最近提交的是5f962b864221,这个即是我们安装了wget的image,将它push到自己的repository,有三个步骤:

[root@ ~]# docker commit 5f962b864221 alexknight/centos-wget

其中,alexknight是自己在仓库里开辟的空间名,接下来是登录自己的帐号

[root@ ~]# docker login -u "第二步注册的名字" -p "passwd" -e "邮箱地址"

登录成功后,push自己的提交

[root@ ~]# docker push alexknight/centos-wget

当在界面看到centos-wget时,操作成功。

把自己提交的centos-wget下载:

[root@ ~]# docker pull alexknight/centos-wget
Pulling repository alexknight/centos-wget
aa194d98cc9e: Download complete
511136ea3c5a: Download complete
34e94e67e63a: Download complete
1a7dc42f78ba: Download complete

再次进入到自己的centos-wget这个版本进行持续提交时:

[root@ ~]#sudo docker run -i -t alexknight/centos-wget /bin/bash

Docker简明教程(以安装wget程序为例)的更多相关文章

  1. Docker简明教程

    Docker简明教程 [编者的话]使用Docker来写代码更高效并能有效提升自己的技能.Docker能打包你的开发环境,消除包的依赖冲突,并通过集装箱式的应用来减少开发时间和学习时间. Docker作 ...

  2. Docker系列教程01-Centos7安装新版Docker教程(10步)

    最近一直忙于开发,没有时间好好总结一下docker的知识.其实现在docker的教程已经很多很多了,但是很多系统的教程都是基于Ubuntu系统,因为官方推荐使用Ubuntu系统啊,原因在于Ubuntu ...

  3. Docker基础教程(安装篇)

    Linux安装: 1.yum -y install docker-io 2.service docker start 3.chkconfig docker on Window安装: Docker 引擎 ...

  4. duilib教程之duilib入门简明教程3.第一个程序 Hello World

    小伙伴们有点迫不及待了么,来看一看Hello World吧:新建一个空的win32项目,新建一个main.cpp文件,将以下代码复制进去: #include <windows.h> #in ...

  5. Docker简明教程(转)

    Docker自从诞生以来就一直备受追捧,学习Docker是一件很炫酷.很有意思的事情.我希望通过这篇文章能够让大家快速地入门Docker,并有一些学习成果来激发自己的学习兴趣.我也只是一个在Docke ...

  6. Docker简明教程(转)

    Docker自从诞生以来就一直备受追捧,学习Docker是一件很炫酷.很有意思的事情.我希望通过这篇文章能够让大家快速地入门Docker,并有一些学习成果来激发自己的学习兴趣.我也只是一个在Docke ...

  7. Java手机游戏开发简明教程 (SunJava开发者认证程序员 郎锐)

    原文发布时间为:2008-07-30 -- 来源于本人的百度文章 [由搬家工具导入] Java手机游戏开发实例简明教程 (SunJava开发者认证程序员 郎锐)一、手机游戏编写基础1.手机游戏设计的基 ...

  8. Docker 入门教程(1)——安装

    docker大名听说了很久,一直没有去研究过,但现在面试动不动要求docker,还是研究下吧.由于我的电脑是win10系统(穷,买不起mac),安装过程各种坑爹问题不断,一度都想放弃,所以说垃圾win ...

  9. linux 防火墙iptables简明教程

    前几天微魔部落再次遭受到个别别有用心的攻击者的攻击,顺便给自己充个电,复习了一下linux下常见的防火墙iptables的一些内容,但是无奈网上的很多教程都较为繁琐,本着简明化学习的目的,微魔为大家剔 ...

随机推荐

  1. Gradle常用命令

    使用cmd进入Android studio项目的根目录就可以执行一些gradle相关命令 gradle -v 查看版本 (如果你是第一次执行会去下载Gradle,这个过程如果不FQ非常慢) gradl ...

  2. iOS 多线程 浅述

    什么是进程? 进程是指在系统中正在运行的一个应用程序. 每个进程之间是独立的,每个进程均运行在其专用且受保护的内存空间内. 什么是线程? 1个进程要想执行任务,必须得有线程(每1个进程至少要有1条线程 ...

  3. iOS中如何知道app版本已更新

    主要用于程序升级,开启程序后是否显示新特性两个方面. 1.苹果app版本 苹果规定,程序的版本只能升不能降.例如1.0->1.1可以,1.1->1.0就不可以,不允许上架. 2.app版本 ...

  4. XML解析之SAX详解

    XML解析之SAX详解 本文属于作者原创 http://www.cnblogs.com/ldnh/ XML解析的五个步骤 1.打开文档 (void)parserDidStartDocument:(NS ...

  5. 【原+转】用CMake代替makefile进行跨平台交叉编译

    在开始介绍如何使用CMake编译跨平台的静态库之前,先讲讲我在没有使用CMake之前所趟过的坑.因为很多开源的程序,比如png,都是自带编译脚本的.我们可以使用下列脚本来进行编译: ./configu ...

  6. ios 返回指定导航控制器

    UINavigationController *navigationVC = self.navigationController; NSMutableArray *viewControllers = ...

  7. TFS2012 服务器安装

    配置: 华硕Z97-A I7 4790K 2*2T 4*8G 操作系统: Win2012 标准 SN: DBGBW-NPF86-BJVTX-K3WKJ-MTB6V http://dinghuqiang ...

  8. 首先,编写一个类ChongZai,该类中有3个重载的方法void print();其次, 再编写一个主类来测试ChongZai类的功能

    //计算器 jisuanqi jsq=new jisuanqi(); System., )); System., , )); System.out.println("2.3和4.5 中最大的 ...

  9. 点击jqGrid表格,弹出需要的表格的数据

    首先,我们先定义一个函数,然后在JQuery里面直接引用就可以了, function GetJqGridRowValue(jgrid, code) { var KeyValue = "&qu ...

  10. Java的String.valueOf 转换 与、空串+类型变量转换与封装类(Integer)的toString方式转换比较。

    1.空串+类型变量方式转换 int i=20; String s=""+i; 这种方式实际上经过了两个步骤,首先进行了i.ToString()把 i 转换为 字符串,然后再进行加法 ...