本文提供两种方式安装Docker,一是通过yum方式安装,二是通过源码包的方式安装。

yun方式安装一般比较适合个人玩一玩或者一些互联网公司。说比较适合个人是因为可以联网。说是审核一些互联网公司,是因为这类互联网一般不是很大,所以安全性与规范性不够。因此也会开放外网直接安装。

但是很多公司都是内网环境,根本不给你联网通过yum安装的机会,比如,银行、保险、证券、基金等等。或许可以这么说,大的公司都不会给你直接联网安装部署软件的,或许测试环境有那么一丢丢可能。

本文先来讲述如何通过yum方式安装docker,然后采用源码包方式安装。

一、yum安装docker

1.1 官网安装方式

打开docker官网:https://www.docker.com/

这一步也可以点击

然后就可以按照官网来进行操作了。

1.2 本人安装方式

下面是我之前的安装的文档,仅供参考!

  1. 帮助文档:Docker Documentation | Docker Documentation
  2. Download and install
  3. Docker for Linux
  4. Install
  5. Installation per distro
  6. Install on CentOS

具体步骤,在服务器上进行如下操作:

# 1.卸载旧的版本
sudo yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine# 如有需要,可以安装gcc
yum -y install gcc# 以及gcc-c++
yum -y install gcc-c++# 2.需要的安装包
sudo yum install -y yum-utils# 3.设置镜像仓库
sudo yum-config-manager \--add-repo \# 默认是国外的,不要使用https://download.docker.com/linux/centos/docker-ce.repo# 建议使用阿里云的镜像,十分快sudo yum-config-manager \--add-repo \http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo# 更新yum软件包索引(安装前的工作,非必须)
yum makecache fast
# yum makecache: error: argument timer: invalid choice: 'fast' (choose from 'timer')
# 安装报错了,yum makecache fast是centOS7的命令, 不使用8,可以直接使用
yum makecache # 或者
dnf makecache# 4.安装docker docker-ce:社区版的,docker-ee:企业版的
sudo yum install docker-ce docker-ce-cli containerd.io

第四步报错了:

Docker CE Stable - x86_64                                                   120 kB/s |  19 kB     00:00    
错误:
 问题 1: 安装的软件包的问题 podman-1:3.4.1-3.module_el8.6.0+954+963caf36.x86_64

。。。。。。
  - 软件包 podman-3.1.0-0.13.module_el8.5.0+733+9bb5dffa.x86_64 需要 runc >= 1.0.0-57,但没有提供者可以被安装
。。。。。。
  - 软件包 docker-ce-3:20.10.11-3.el8.x86_64 需要 containerd.io >= 1.4.1,但没有提供者可以被安装
。。。。。。
  - 软件包 podman-catatonit-1:3.4.1-3.module_el8.6.0+954+963caf36.x86_64 需要 podman = 1:3.4.1-3.module_el8.6.0+954+963caf36,但没有提供者可以被安装
  - 软件包 podman-1:3.4.1-3.module_el8.6.0+954+963caf36.x86_64 需要 runc >= 1.0.0-57,但没有提供者可以被安装
(尝试在命令行中添加 '--allowerasing' 来替换冲突的软件包 或 '--skip-broken' 来跳过无法安装的软件包 或 '--nobest' 来不只使用软件包的最佳候选)

此时可以使用如下命令来解决这个问题:

sudo yum install --allowerasing docker-ce docker-ce-cli containerd.io
# 5.启动dockersystemctl start docker# 6.查看docker版本
docker version # 或者
sudo docker version# 7.测试Hello World
docker run hello-world # 或者
sudo docker run hello-world

此时会提示找不到“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/

此时会有拉去成功的签名信息以及欢迎语句,当出现"Hello from Docker!”时,代表我们镜像安装成功。

# 8.查看下载的hello-world镜像
docker images #或者
sudo docker images

此时会有对应的镜像显示:

REPOSITORY    TAG       IMAGE ID       CREATED        SIZE
hello-world   latest    feb5d9fea6a5   2 months ago   13.3kB

到了这里才真正代表着docker安装成功并成功拉取对应的镜像。

如果需要卸载docker的话:

# 1.卸载docker
yum remove docker-ce docker-ce-cli containerd.io# 2.删除资源
rm -rf /var/lib/docker# /var/lib/docker docker的默认工作路径

最后再提一点,如果遇到权限问题,可以在对应的命令上添加:

sudo这个命令,意思是给同组的用户以管理员的操作权限,说白了就是提升权限的。上面的一些命令,有的我加了sudo,有的没有添加,如果遇到权限问题,直接加上即可,一般会有这样的提示:

Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get "http://%2Fvar%2Frun%2Fdocker.sock/v1.24/images/json": dial unix /var/run/docker.sock: connect: permission denied

此时在对应的命令上加上 sudo即可。

二、配置镜像加速器

我们这里配置阿里云的镜像加速器。

2.1 登陆阿里云

阿里云官网

可以使用淘宝、支付宝等阿里系账号登陆,然后点击右上角控制台。

点击左上角,在弹性计算这一列,选择容器镜像服务。

2.2 配置加速器

复制加速器地址,修改daemon配置文件,一共两种方式:

第一种,按照阿里云官网分步骤

# 1.创建配置文件目录
sudo mkdir -p /etc/docker# 2.执行脚本,该脚本是将JSON串反写到daemon.jsonn文件中
sudo tee /etc/docker/daemon.json <<-'EOF'
{"registry-mirrors": ["https://xxxx4.mirror.aliyuncs.com"]
}
EOF# 3.重新加载docker
sudo systemctl daemon-reload# 4.重启docker
sudo systemctl restart docker

第二种,直接粘贴到文件中

vim /etc/docker/daemon.json

将其中的JSON串粘贴到刚才打开编辑的daemon.json文件中:

{ "registry-mirrors": ["https://xxxx.mirror.aliyuncs.com"] }

注意:

  1. 上面的是我个人的,我用xxx修改了,大家可以用支付宝或淘宝生成自己的加速器;
  2. sudo命令是针对非管理员用户的,如果你是非管理员,该命令必不可少,是管理员加不加无所谓;
  3. tee到最后的EOF命令是一个整体,不可分开执行。

三、源码包安装docker

Linux系统安装Docker相关推荐

  1. Ubuntu 20.04 linux系统安装docker

    Docker是一个开源的应用容器引擎.容器完全使用沙箱机制,相互之间不会有任何的接口.虽然现在也可以安装到windows机器上,但是主要是应用在linux系统上,生产环境中也建议安装在linux系统上 ...

  2. Linux系统安装docker教程

    前言 目录 前言 一.卸载docker(可选) 二.安装docker 三.启动docker 四.配置镜像加速: 总结 本教程安装docker的环境是centos7并且安装的是docker社区版.Doc ...

  3. Linux系统安装docker源失败

    docker 安装源失败 错误描述 yum添加完docker源的地址,执行 yum makecache后返回如下的问题 yum makecache failure: repodata/repomd.x ...

  4. Win10内置Linux系统安装docker

    ​​本文同步自微信公众号:浮世Talk(ID:fausai_talk)​ 更好阅读体验请扫码关注公众号 相信有过编程经历的朋友都有这样的体会:为了学习一门技术去安装软件时,不仅需要根据操作系统选择版本 ...

  5. linux 防火墙不起作用,Linux系统安装docker后,firewall规则无效不起作用

    ## 失效原因 默认情况下, docker启动后参数中如果加了端口映射, 就会自动将端口开放给所有网络设备访问, 并且这种情况下即使在本机的系统防火墙中加规则也无效, 因为docker会自动添加一个优 ...

  6. Linux系统安装 | Docker安装最新版本Ubuntu并启动容器

    一.拉取最新Ubuntu镜像 docker image pull是抓取 image 文件的命令: $ docker pull ubuntu:latest latest: Pulling from li ...

  7. Deepin系统安装docker

    Deepin系统安装docker 因为deepin是基于debian发行版的一个操作系统,所以我们deepin用户安装docker可以直接按照下面这个官方教程来安装,不过由于deepin的特殊性,在第 ...

  8. hp服务器下的虚拟机安装系统安装,hp 服务器安装linux系统安装

    hp 服务器安装linux系统安装 内容精选 换一换 该任务以"CentOS 7 64位"操作系统为例,指导用户安装Linux操作系统.由于镜像文件不同,安装步骤稍有不同,请根据实 ...

  9. 银河麒麟v10系统安装docker

    银河麒麟v10系统安装docker 第二章 银河麒麟v10系统安装docker 文章目录 银河麒麟v10系统安装docker 一.下载docker-ce 二.安装docker 一.下载docker-c ...

最新文章

  1. Google全球员工围攻Google!
  2. 如何检查Go中是否存在文件?
  3. 送计算机教授教师节礼物,教师节送教授什么礼物好
  4. 20135320赵瀚青LINUX第四章读书笔记
  5. ​用c语言打印自定义的乘法口诀表。例如:输入9,输出9*9口诀表,输入12,输出12*12的乘法口诀表。...
  6. Java线程的6种状态
  7. ASP.NET 2.0 的数据源、数据绑定控件概述与区别
  8. iCloud怎么协同作业文? iCloud怎么协同编辑文档?
  9. 常见性能问题:慢sql导致响应时间长分析定位
  10. java自学难点_学习JAVA遇到的难点总结
  11. 突破封锁的浏览器_零的突破!重庆第一台全国产电脑到底长什么样?
  12. android studio react native 模拟器,Windows下搭建React Native环境与Android Studio集成
  13. 你知道哪些苹果自家应用采用 Swift 语言编写吗?
  14. 一文掌握面向Windows平台的深度学习工控程序开发(使用Paddle Inference部署MFC、C#程序,内含完整代码链接)
  15. centos检测不到磁盘_linux – Centos 7服务器看不到磁盘阵列磁盘
  16. GPS经纬度差值对应地面距离多少米
  17. android通讯录换ipone,换新iPhone手机,通讯录你会转移吗?90%人居然还不会!
  18. 编译原理 第二章 程序设计语言及其文法
  19. 使用vba进行excel超链接设置(链接到当前文档某一单元格)
  20. 常用Linux命令及其作用(超详细,带演示)

热门文章

  1. 【Git删除大文件失败,提示WARNING: Ref ‘refs/heads/master‘ is unchanged的解决思路】
  2. RAC11g 新增另一个网卡,DG同步
  3. 找到新硬件向导的的解决方法
  4. gpt4人工智能怎么下载-chatgpt哪里下载
  5. notablilty笔记本模板_iPad 笔记软件选择 Notability 还是 Goodnotes?
  6. 不用中断实现嘀嗒计数器
  7. 移动端侧边菜单栏-Jquery
  8. 【读过的书】《乖,摸摸头》
  9. (转)非主流自然语言处理——遗忘算法系列(二):大规模语料词库生成
  10. 沉默 洞悉 对抗 ,成长的蜕变