参考源

https://www.bilibili.com/video/BV187411y7hF?spm_id_from=333.999.0.0

版本

本文章基于 CentOS 7.6


这里使用 yum 方式安装 Docker

概述

yum 是 Linux 的在线安装方式,是比较方便的。

由于 yum 是在线安装,需要从网络获取数据,所以得先保证系统是能联网的,否则一定会安装失败。

这里使用安装 Docker 作为示例。

安装

官网安装参考手册

https://docs.docker.com/install/linux/docker-ce/centos/

命令

yum install 程序名

参数

-y:所有的 yes / no 都选择 yes,确定安装时都选择 yes 时可以使用,可以省去一些选择步骤。

1、系统版本检测。

本次示例基于 CentOS 7 进行演示,所以需要先确认系统的版本。

cat /etc/redhat-release

2、卸载以前的 Docker。

为避免版本之间的冲突,这里建议先卸载以前的版本再进行安装。

yum -y remove docker docker-common docker-selinux docker-engine

由于这里之前没有安装过 Docker,所以显示没有匹配到。

3、安装运行环境。

Docker 是用 Go 语言开发的。

Go 语言基于 CC++,所以需要先安装 CC++ 环境。

安装 C 环境。

yum -y install gcc

安装 C++ 环境。

yum -y install gcc-c++

4、环境准备。

根据 Docker 官网的建议,需要再安装一些环境。

yum install -y yum-utils device-mapper-persistent-data lvm2

5、设置镜像仓库。

这里官网建议我们安装国外的镜像仓库。

由于对国外的网络限制,国内安装的话会非常慢,并很有可能失败。

推荐国内用户安装阿里云镜像。

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

6、更新 yum 软件包索引.

这里官网建议我们更新 yum 软件包索引:

yum makecache fast

7、安装 Docker.

做完前面的准备工作,就可以开始安装 Docker 了

yum -y install docker-ce docker-ce-cli containerd.io

这里的 docker-ce 指的是 Docker 的社区版。

如果是需要企业版的话就改为 docker-ee ,不过企业版是收费的,而且功能也略有不同。

官方更推荐社区版,所以这里我们安装docker-ce

8、启动 Docker。

Docker 安装完成后,就可以运行如下命令启动。

systemctl start docker

测试

启动 Docker 后,我们可以运行如下命令对 Docker 进行测试。

查看 Docker 进程

[root@sail ~]# ps -ef|grep docker
root 18805 1 0 16:54 ? 00:00:00 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
root 19233 16612 0 16:59 pts/0 00:00:00 grep --color=auto docker

由此可以看出,Docker 是启动成功了的。

查看版本信息

[root@sail ~]# docker version
Client: Docker Engine - Community
Version: 20.10.11
API version: 1.41
Go version: go1.16.9
Git commit: dea9396
Built: Thu Nov 18 00:38:53 2021
OS/Arch: linux/amd64
Context: default
Experimental: true Server: Docker Engine - Community
Engine:
Version: 20.10.11
API version: 1.41 (minimum version 1.12)
Go version: go1.16.9
Git commit: 847da18
Built: Thu Nov 18 00:37:17 2021
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.4.12
GitCommit: 7b11cfaabd73bb80907dd23182b9347b4245eb5d
runc:
Version: 1.0.2
GitCommit: v1.0.2-0-g52b36a2
docker-init:
Version: 0.19.0
GitCommit: de40ad0

可以看出 Docker 的版本为 20.10.11

运行 Hello World 镜像

Hello World 镜像是 Docker 官方为测试 Docker 环境和运行情况所设定的一个程序。

docker run hello-world
[root@sail ~]# docker run hello-world
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
2db29710123e: Pull complete
Digest: sha256:cc15c5b292d8525effc0f89cb299f1804f3a725c8d05e158653a563f15e4f685
Status: Downloaded newer image for hello-world:latest Hello from Docker!
This message shows that your installation appears to be working correctly. To generate this message, Docker took the following steps:
1. The Docker client contacted the Docker daemon.
2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
(amd64)
3. The Docker daemon created a new container from that image which runs the
executable that produces the output you are currently reading.
4. The Docker daemon streamed that output to the Docker client, which sent it
to your terminal. To try something more ambitious, you can run an Ubuntu container with:
$ docker run -it ubuntu bash Share images, automate workflows, and more with a free Docker ID:
https://hub.docker.com/ For more examples and ideas, visit:
https://docs.docker.com/get-started/

由以下结果可以看出,我们的 Docker 工作环境是搭建完毕了的。

Hello from Docker!
This message shows that your installation appears to be working correctly.

查看镜像

在执行启动 Hello World 镜像的命令时,如果本地没有该镜像,会先从镜像库中拉取该镜像再启动。

使用 docker images 查看目前的 Docker 的镜像情况:

[root@sail ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
hello-world latest feb5d9fea6a5 2 months ago 13.3kB

这里我们可以看到刚拉取的 hello-world 镜像,以及它的相关信息。

阿里云镜像加速

如果是阿里云的服务器,还可以使用阿里云的镜像加速使得 Docker 使用起来更加快速和高效。

打开阿里云服务器列表,选择如图所示的容器镜像服务

选择如图所示的镜像加速器,然后选择对应的服务器系统。

在服务器上依次执行上图所示的 4 条命令即可实现阿里云的镜像加速。

至此,yum 方式安装 Docker 完毕。

Linux 12 安装Docker的更多相关文章

  1. Arch系Linux中安装Docker

    Arch系Linux中安装Docker 1. 下载最新版docker $ sudo pacman -Syu docker 2. 免sudo执行docker $ sudo gpasswd -a ${US ...

  2. Docker学习笔记二(linux下安装Docker)

    Docker学习笔记二(linux下安装Docker) 1.在线安装linux Docker 这种方式首先要保证linux 环境下可以上网,当然,小编是在自己的电脑上安装了虚拟机,在虚拟机上安装了,l ...

  3. linux环境安装docker,部署应用

    安装: 1.Docker要求CentOS系统的内核版本高于 3.10 ,通过 uname -r 命令查看你当前的内核版本是否支持安账docker 2.更新yum包:sudo yum update 3. ...

  4. linux命令安装docker

    安装: 1.Docker要求CentOS系统的内核版本高于 3.10 ,通过 uname -r 命令查看你当前的内核版本是否支持安账docker 2.更新yum包:sudo yum update 3. ...

  5. 升级项目到.NET Core 2.0,在Linux上安装Docker,并成功部署

    概述 容器,顾名思义是用来存放并容纳东西的器皿: 而容器技术伴着Docker的兴起也渐渐的映入大家的眼帘,它是一个抽象的概念,同时也是默默存在世上多年的技术,不仅能使应用程序间完全的隔离,而且还能在共 ...

  6. 在linux上安装docker

    我的linux系统是阿里云服务器,是centos版本的. 前置条件 64-bit 系统 kernel 3.10+ 用uname -r命令检查内核版本,返回的值大于3.10即可. 用sudo wget ...

  7. 【linux】安装docker

    硬件Centos6.9 x86_64 1.查看centos内核,uname -r 目前,CentOS 仅发行版本中的内核支持 Docker. Docker 运行在 CentOS 7 上,要求系统为64 ...

  8. Linux Mint安装Docker踩坑指南

    我家的服务器选用的Linux Mint系统,最近安装Docker的时候踩了一些小坑,但是总体还算顺利. 我们都知道Linux Mint系统是基于Ubuntu的,说实话用起来感觉还是很不错的,安装Doc ...

  9. Linux 上安装Docker 并部署netcor2.1

    述 容器,顾名思义是用来存放并容纳东西的器皿: 而容器技术伴着Docker的兴起也渐渐的映入大家的眼帘,它是一个抽象的概念,同时也是默默存在世上多年的技术,不仅能使应用程序间完全的隔离,而且还能在共享 ...

随机推荐

  1. 聊聊C#中的Mixin

    写在前面 Mixin本意是指冰淇淋表面加的那些草莓酱,葡萄干等点缀物,它们负责给冰淇淋添加风味.在OOP里面也有Mixin这个概念,和它的本意相似,OOP里面的Mixin意在为类提供一些额外功能--在 ...

  2. UNION 与 UNION ALL 的区别

    UNION:合并查询结果,并去掉重复的行. UNION ALL:合并查询结果,保留重复的行. 举例验证说明: 创建两个表:user_info 和 user_info_b,设置联合主键约束,联合主键的列 ...

  3. 且看这个Node全栈框架,实现了个Cli终端引擎,可无限扩充命令集

    背景介绍 一般而言,大多数框架都会提供Cli终端工具,用于通过命令行执行一些工具类脚本 CabloyJS提供的Cli终端工具却与众不同.更确切的说,CabloyJS提供的是Cli终端引擎,由一套Cli ...

  4. 关于string类型的大小写转换函数

    对于string类型的有力工具 transform(s.begin(), s.end(), s.begin(),::tolower)大写转小写 transform(s.begin(), s.end() ...

  5. C#.NET中的程序集版本

    更新记录 2022年4月16日:本文迁移自Panda666原博客,原发布时间:2021年8月22日. 在Visual Studio中查看程序集版本 在程序运行中获得程序集版本信息 除了在Visual ...

  6. python-将print内容保存到文件

    通过sys.stdout得到print输出的内容,再进行保存 import sys class Logger(object): def __init__(self, file_path: str = ...

  7. Python量化-如何获取实时股票信息

    如何获取实时股票信息 股票信息的接口有很多,之前大家常用的是新浪的,但在年初的时候,新浪的接口突然不能使用,给大家造成了很大的困扰,为此网上也有很多教程教大家如何从新浪获取数据,跟着教程弄了半天也不行 ...

  8. 机械硬盘和ssd固态硬盘的原理对比分析

    固态硬盘和机械硬盘的区别 机械硬盘 磁头是不是直接和盘片接触的呢 磁盘中有几个盘片 机械硬盘的工作原理 固态硬盘的寻址方式 SMR叠瓦式真的比PMR优秀吗 固态硬盘 主控芯片 闪存颗粒 缓存单元 固态 ...

  9. maven编译 出现Process terminated

    问题: 解决方案: 在Settings中配置一下maven

  10. Unsupervised Person Re-identification by Soft Multilabel Learning

    简介: 这是一篇19年CVPR的跨域无监督Re-ID论文,在Market1501和DukeMTMC-reID上分别达到了67.7%和67.1%的rank-1精度,算是一篇将准确度刷得比较高的论文了,在 ...