1 什么是docker

docker是基于GO语言编写的开源容器项目,诞生于2013年初,到目前为止,已经经历了6年的发展演变。现如今,docker已经非常火爆,特别是在一线IT企业,部署、运维等工作都借助docker来展开。Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口,更重要的是容器性能开销极低。
如何你还不熟悉docker,那就赶紧学习起来吧。

2 docker安装与配置

安装docker有多种方法,本文介绍使用最多,也是官方推荐的方法:通过docker源安装。其他安装方法可参考官方文档
在安装之前,还有一些工作需要进行:
1)卸载删除系统中所有与docker相关的内容(docker docker-engine docker.io):
$ sudo apt-get remove docker docker-engine docker.io containerd runc

如果系统中并未安装过docker相关内容,那么这几个软件包卸载都提示未安装,继续下一步即可。

(2)更新镜像源-
先安装软件包支持https协议的源:
$ sudo apt-get update
$ sudo apt-get install \ apt-transport-https \ ca-certificates \ curl \ gnupg-agent \ software-properties-common
添加源的gpg密钥:
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
验证密钥指纹为“9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88”。
$ sudo apt-key fingerprint 0EBFCD88
添加docker源:
$ sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
完成上述步骤之后,才是真正的安装docker:
$ sudo apt-get update
$ sudo apt-get install docker-ce docker-ce-cli containerd.io
结束上述步骤之后,如果没有报错,docker就成功安装了。
可以验证一下是否安装成功:
$ docker --version # 获取版本号
Docker version 18.09.6, build 481bc77
可以看到,成功获取了刚安装的docker的版本号,证明安装成功了。
(3)配置docker用户组
在默认情况下,只有root用户和docker组(安装docker时自动创建)的用户才能直接运行docker命令,但出于安全考虑,一般不会直接使用root用户,但普通用户(非root、docker用户)运行docker命令需加上sudo,为避免这一麻烦,可以将需要使用docker的用户加入docker用户组中。
$ sudo usermod -aG docker username
注意:将用户加入docker用户组后,退出当前终端,重新登陆方可生效。
尝试获取并运行我们的第一个docker吧!
获取hello-world镜像:
$ docker pull hello-world
运行镜像,启动容器:
$ docker run hello-world
运行后,有一下输出:
Hello from Docker!
This message shows that your installation appears to be working correctly.
惊喜吧,提示成功运行,再次证明刚安装的docker没有问题。
 
 
 
 
 

docker系列(一):docker基础与安装笔记的更多相关文章

  1. Docker系列之实战:3.安装MariaDB

    环境 [root@centos181001 ~]# cat /etc/centos-release CentOS Linux release 7.6.1810 (Core) [root@centos1 ...

  2. Docker系列03—Docker 基础入门

    本文收录在容器技术学习系列文章总目录 1.概念介绍 1.1 容器 1.1.1 介绍 容纳其它物品的工具,可以部分或完全封闭,被用于容纳.储存.运输物品.物体可以被放置在容器中,而容器则可以保护内容物. ...

  3. Docker系列之Docker镜像(读书笔记)

    一.基本概念 Docker包括三个基本概念镜像.容器.仓库. Docker镜像:就是一个只读的模板.例如:一个镜像可以包含一个完整的ubuntu操作系统环境,里面仅安装了Apache或其他应用程序.用 ...

  4. Docker系列一之基础快速入门企业实战

    1.1什么是LXC LXC为Linux Container的简写.Linux Container容器是一种内核虚拟化技术,可以提供轻量级的虚拟化,以便隔离进程和资源,而且不需要提供指令解释机制以及全虚 ...

  5. Docker系列01—Docker 基础入门

    一.初识Docker和容器 1.1 什么是docker 容纳其他物品的工具,可以部分或完全封闭,被用于容纳.存储.运输物品.物体可以被放置在容器中,而容器则可以保护内容物. 容器? 容器就是在隔离的环 ...

  6. Docker学习之1—基础及安装

    Docker介绍: Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.容器是完全使用沙箱机制 ...

  7. docker 系列之 docker安装

    Docker支持以下的CentOS版本 CentOS 7 (64-bit) CentOS 6.5 (64-bit) 或更高的版本 前提条件 目前,CentOS 仅发行版本中的内核支持 Docker. ...

  8. Docker 系列01: Centos7.3 上安装docker

    Docker从1.13版本之后采用时间线的方式作为版本号,分为社区版CE和企业版EE. 社区版是免费提供给个人开发者和小型团体使用的,企业版会提供额外的收费服务,比如经过官方测试认证过的基础设施.容器 ...

  9. Docker系列一: docker简介及基本环境安装

    Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源. Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中,然后发布到任何流行的 Li ...

  10. docker在ubuntu14.04下的安装笔记

    本文主要是参考官网教程进行ubuntu14.04的安装. 下面是我的安装笔记. 笔记原件完整下载: 链接: https://pan.baidu.com/s/1dEPQ8mP 密码: gq2p

随机推荐

  1. mybatis 动态curd

    xml <select id="selectByCondition" parameterType="com.oracle.pojo.Student" re ...

  2. redis中关于过期键的删除策略

    我们已经了解到了Redis是一种内存数据库,Redis中数据都是以key-value的形式存储在内存中.由Redisserver来维护和管理这部分内存,内存是何足珍贵,不须要的数据或者是已经使用过的无 ...

  3. appium支持的版本

    appium 支持4.2以上的版本 2.3-4.1的版本的支持通过Selendroid实现

  4. python day 13 生成器 以及 推导式

    1.生成器的本质是迭代器 2.生成器函数 def  fn() 函数体 yield fn() g = fn() 此时这个g就是生成器 所以g 是可迭代的 g._ _next_ _ 每执行一次_ _nex ...

  5. SignatureDoesNotMatch REST接口 在任何时间、任何地点、任何互联网设备上 在Header中包含签名

    PutObject_关于Object操作_API 参考_对象存储 OSS-阿里云 https://help.aliyun.com/document_detail/31978.html OSS API ...

  6. the hard problems when writing a great connector; type cohersion, data partitioning and data locality to name a few

    http://rosslawley.co.uk/introducing-a-new=mongodb-spark-connector/

  7. 仿udhcpd配置文件读取的一段代码

    前段时间看udhcpd的源代码,后来因为没直接应用,也就放弃了.网上有文章udhcpd详解(搜索一下有很多),其中在介绍udhcpd的配置相关代码时,有如下一句话,学习了这段代码后,以后用到需要读配置 ...

  8. 获取浏览器屏幕高度(js,jq)

    javascript IE中:document.body.clientWidth ==> BODY对象宽度document.body.clientHeight ==> BODY对象高度do ...

  9. mysql优化----大数据下的分页,延迟关联,索引与排序的关系,重复索引与冗余索引,索引碎片与维护

    理想的索引,高效的索引建立考虑: :查询频繁度(哪几个字段经常查询就加上索引) :区分度要高 :索引长度要小 : 索引尽量能覆盖常用查询字段(如果把所有的列都加上索引,那么索引就会变得很大) : 索引 ...

  10. 关于谷歌浏览器默认字体12px的解决方案

    1. * Chrome 中文界面下默认会将小于 12px 的文本强制按照 12px 显示, 可通过加入 CSS 属性 -webkit-text-size-adjust: none; 解决. 超链接访问 ...