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. RC4算法的Python实现详注

    刚对RC4算法进行了学习,网上发现https://ju.outofmemory.cn/entry/46753 中作者展示了RC4的python实现,但代码缺乏注释,较为晦涩,因此本文对部分代码进行了注 ...

  2. vc6.0的一些快捷键

    1.检测程序中的括号是否匹配    把光标移动到需要检测的括号(如大括号{}.方括号[].圆括号()和尖括号<>)前面,键入快捷键“Ctrl+]”.如果括号匹配正确,光标就跳到匹配的括号处 ...

  3. C/C++用状态转移表联合函数指针数组实现状态机FSM

    状态机在project中使用很的频繁,有例如以下常见的三种实现方法: 1. switch-case 实现.适合简单的状态机. 2. 二维状态表state-event实现.逻辑清晰.可是矩阵通常比較稀疏 ...

  4. 新手必备的SEO优化工具

  5. using the flume-ng-sql-source plugin to push data from Mysql DB to Spark

    org.apache.flume.EventDeliveryException while running flume and sending data to spark · Issue #21 · ...

  6. js modify local file

    https://stackoverflow.com/questions/4561157/is-it-possible-to-modify-a-html-file-from-which-the-scri ...

  7. 汉字与区位码互转(天天使用Delphi的String存储的是内码,Windows记事本存储的文件也是内码),几个常见汉字的各种编码,utf8与unicode的编码在线查询,附有读书笔记 good

    汉=BABA(内码)=-A0A0=2626(区位码)字=D7D6(内码)=-A0A0=5554(区位码) 各种编码查询表:http://bm.kdd.cc/ 汉(记住它,以后碰到内存里的数值,就会有敏 ...

  8. Android源代码下载过程中无法下载repo的解决方法【转】

    本文转载自:http://blog.csdn.net/shangyuan21/article/details/17618575 我们都知道下载Android源代码需要使用repo进行辅助下载,但是最进 ...

  9. HDU1964 Pipes —— 插头DP

    题目链接:https://vjudge.net/problem/HDU-1964 Pipes Time Limit: 5000/1000 MS (Java/Others)    Memory Limi ...

  10. expect的安装与使用

    expect的安装与使用 是什么 expect 是用来进行自动化控制和测试的工具.主要是和交互式软件telnet ftp ssh 等进行自动化的交互. 如何安装 1.检测是否安装 ls /usr/bi ...