【云原生 | 02】分别在CentOS、Ubuntu、macOS、win7、win8、win10等不同操作系统下安装Docker详细教程

简介: Docker引擎是使用Docker容器的核心组件,可以在主流的操作系统和云平台上使用, 包括 Linux 操作系统(如 Ubuntu、Debian、CentOS、Redhat 等),macOS 和 Windows 操作系统, 以及IBM、亚马逊、微软等知名云平台.........

🍁作者简介:🏅云计算领域优质创作者🏅新星计划第三季python赛道TOP1🏅 阿里云ACE认证高级工程师🏅

✒️个人主页:小鹏linux

💊个人社区:小鹏linux(个人社区)欢迎您的加入!

目录

1. Docker概念

2. Docker 比传统虚拟化有哪些优势?

3. Docker 的安装

3.1 通过脚本安装

3.2 CentOS环境下安装Docker

3.3 Ubuntu 环境下安装 Docker

3.4  macOS 环境下安装 Docker

3.5 Windows 10 环境下安装 Docker

3.6 Windows 7、8 环境下安装 Docker

👑👑👑结束语👑👑👑


1. Docker概念

Doctor相当于一个管理工具

基于Linux container 内核虚拟化技术,由 Golang语言编写的,遵从apache2.0协议,托管在github平台的一个管理引擎。

        通过 UFS overlay 实现镜像的层级关连以及容器的可写层挂载

        通过 namespace 名字空间实现容器级别的隔离

        通过 CGROUP 实现资源的限制

        通过 bridge网桥实现容器间的通讯

        通过 chroot 实现伪根

2. Docker 比传统虚拟化有哪些优势?

1)能够将更多的资源提供给客户使用。

2)Docker启动属于秒级启动,虚拟机启动需要几分钟去进行启动。

3)Docker属于操作系统级别的虚拟化,通过Docker守护进程直接和内核进行交互,几乎没有性能损耗;虚拟机是硬件级别的虚拟化,需要通过Hypevisor层,性能损耗比较大

4)Docker更轻量,占用内存小,在同样的硬件环境下,Docker运行的镜像数量要远多于虚拟机数量。

5)Docker通过Namespaces和Cgroups实现对应用程序的进程之间的隔离,虚拟机从操作系统层面实现隔离,所以虚拟机的隔离性更强、安全性更好

3. Docker 的安装

3.1 通过脚本安装

用户可以使用官方提供的shell脚本来在Linux系统(目前支持Ubuntu. Debian、 Ora이eserver、Fedora、Centos、OpenSuse. Gentoo 等常见发行版) 上安装 Docker 的最新正式 版本,该脚本会自动检测系统信息并进行相应配置:

$ curl -fsSL https://get.docker.com/ | sh

image.gif

或者:
$ wget -qO- https://get.docker.com/ | sh

image.gif

如果想尝鲜最新功能,可以使用下面的脚本来安装最新的“尝鲜”版本。但要注意,非 稳定版本往往意味着功能还不够稳定,不要在生产环境中使用:

$ curl -fsSL https://test.docker.com/ | sh

image.gif

另外,也可以从 store.docker.com/search?offering=community&q=&type=edition 找到各个 平台上的Docker安装包,自行下载使用。

3.2 CentOS环境下安装Docker

3.2.1 准备工作

  1. 先安装一个CentOS7.6的虚拟机。要求:硬盘大小大于等于100GB,网络我们选择仅主机模式。
  2. 编辑虚拟机设置,镜像文件选择CentOS-7-x86_64-Minimal-1810.iso
  3. 添加一块新网卡。网卡一:仅主机模式(工作环境都是仅主机模式)。网卡二:NAT模式(用来上网的)。
  4. 将虚拟机的NAT模式dhcp获取方式勾选上
  5. 开启虚拟机,进行安装。切记手动分区,/boot分区为800MB,/swap分区为4GB
[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-ens33

image.gif

打开网卡配置文件,修改如下:
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.232.165
NETMASK=255.255.255.0

image.gif

[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-ens37

image.gif

打开网卡二的配置,修改如下:
BOOTPROTO=dhcp
ONBOOT=yes

image.gif

[root@localhost ~]# systemctl restart network #重启网卡
[root@localhost ~]# vi /etc/selinux/config

image.gif

关闭selinux。(若要临时关闭selinux,执行setenforce 0即可)打开配置文件,修改如下:
SELINUX=disabled

image.gif

配置yum网易源:
[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# mkdir back
[root@localhost yum.repos.d]# mv C* back/

image.gif

浏览器搜素http://mirrors.163.com/.help

点击CentOS,点击下载CentOS7.然后右击浏览器下载的文件,

选择复制下载地址http://mirrors.163.com/.help/CentOS7-Base-163.repo

[root@localhost yum.repos.d]# curl http://mirrors.163.com/.help/CentOS7-Base-163.repo > 163.repo  #配置网易网络源
[root@localhost yum.repos.d]# cd
[root@localhost ~]# yum clean all        #清除yum缓存
[root@localhost yum.repos.d]# yum -y install net-tools vim lrzsz iptables-services  #安装常用工具
[root@localhost ~]# systemctl stop firewalld        #临时关闭防火墙
[root@localhost ~]# systemctl disable firewalld     #设置防火墙开机不自启动
[root@localhost ~]# iptables -F                     #清空防火墙规则
[root@localhost ~]# systemctl start iptables
[root@localhost ~]# systemctl enable iptables
[root@localhost ~]# iptables -F                     #再次清空防火墙规则
[root@localhost ~]# service iptables save         #保存到文件防止下次启动又有规则生成
[root@localhost ~]# shutdown -h now                 #虚拟机的话建议关机保存快照再开机

image.gif

3.2.2 开始安装

Docker在CentOS中的安装方式:

方式一:> Script(不推荐)企业用的比较多的是19.03版本

curl -sSL https://get.docker.com/ | sh
#官方脚本安装:自动检测当前系统并会自动选择安装当前平台能够使用的最新稳定版
systemctl start docker
systemctl enable docker
docker run hello-world

image.gif

方式二:> Yum安装

yum install -y yum-utils 
cd /etc/yum.repos.d/
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo    #然后ls查看发现有docker-ce.repo 源产生

image.gif

方式三:> Rpm安装(推荐)

浏览器https://mirrors.aliyun.com/docker-ce/linux/centos/7.6/x86_64/stable/Packages/        下载所需版本的源码包安装

国外镜像,比较慢,浏览器搜素DaoCloud | Docker 极速下载:

找到Docker Hub 加速器,点击一次配置无缝使用。找到curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://f1361db2.m.daocloud.io

[root@localhost ~]# curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://f1361db2.m.daocloud.io
[root@localhost ~]# vim /etc/docker/daemon.json        #打开配置文件,修改阿里云镜像加速

image.gif

将{"registry-mirrors": ["http://f1361db2.m.daocloud.io"]修改为{"registry-mirrors": ["https://kfp63jaj.mirror.aliyuncs.com"]}
[root@localhost ~]# systemctl restart docker        #重启服务
[root@localhost ~]# docker info                     #查看生效了

image.gif

备注:

小于等于1.16 版本镜像加速方法:

cp /lib/systemd/system/docker.service  /etc/systemd/system/docker.service
chmod 777 /etc/systemd/system/docker.service
vim    /etc/systemd/system/docker.service   
    ExecStart=/usr/bin/dockerd-current  --registry-mirror=https://kfp63jaj.mirror.aliyuncs.com \
systemctl   daemon-reload
systemctl   restart   docker
ps   -ef   |   grep docker

image.gif

阿里云Docker官网:https://dev.aliyun.com/search.html

3.3 Ubuntu 环境下安装 Docker

3.3.1 系统要求


Ubuntu操作系统对Docker的支持十分成熟,可以支持包括x86_64、armhf、s390x (IBM . Z)、ppc641e等系统架构,只要是64位即可。’

Docker目前支持的最低Ubuntu版本为14.04LTS,但实际上从稳定性上考虑,推荐使用 16.04 LTS或18.0.4 LTS版本,并且系统内核越新越好,以支持Docker最新的特性。

用户可以通过如下命令检查自己的内核版本详细信息:

$ uname -a
Linux localhost 4.9.36-x86_64-generic

image.gif

或者:
$ cat /proc/version
Linux version 4.9.36-x86_64-generic (maker@linux.com) (gcc version 4.9.2 (Debian 4.9.2-10))

image.gif

如果使用Ubuntu 16.04 LTS版本,为了让Docker使用aufs存储,推荐安装如下两个 软件包:

$ sudo apt-get update
$ sudo apt-get install -y \
1inux-image-extra-$(uname -r) \
1inux-image-extra-virtual

image.gif

注意:Ubuntu发行版中,LTS ( Long-Term-Support)意味着更稳定的功能和更长期(目前为 5年)的升级支持,生产环境中推荐尽量使用LTS版本。

3.3.2 添加镜像源

首先需要安装apt-transport-https等软件包支持https协议的源:

$ sudo apt-get update
$ sudo apt-get install \  -
    apt -transport-https \
    ca-certificates \
    curl \
    software-properties-common

image.gif

添加源的gpg密钥:

$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - OK

image.gif

确认导入指纹为 “9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C OEBF CD88” GPG 公钥:

$ sudo apt-key fingerprint 0EBFCD88
pub 4096R/0EBFCD88 2017-02-22
    Key fingerprint = 9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C OEBF CD88
uid Docker Release (CE deb) <docker@docker.com>
sub 4096R/F273FCD8 2017-02-22

image.gif

获取当前操作系统的代号:

$ lsb_release -cs
xenial

image.gif

一般情况下,Ubuntu 16.04 LTS 代号为 xenial, Ubuntu 18.04 LTS 代号为 bionic

接下来通过如下命令添加Docker稳定版的官方软件源,非xenia!版本的系统注意修改 为自己对应的代号:

$ sudo add-apt-repository \
ndeb [arch=amd64] https://download.docker.com/linux/ubuntu \ xenial \ stable"

image.gif

添加成功后,再次更新apt软件包缓存:

$ sudo apt-get update

image.gif

3.3.3 开始安装Docker

在成功添加源之后,就可以安装最新版本的Docker 了,软件包名称为docker-ce,代表 是社区版本:

$ sudo apt-get install -y docker-ce

image.gif

如果系统中存在较旧版本的Docker,会提示是否先删除,选择是即可。

除了基于手动添加软件源的方式之外,也可以使用官方提供的脚本来自动化安装Docker:

$ sudo curl -sSL https://get.docker.com/ | sh

image.gif

安装成功后,会自动启动Docker服务.

用户也可以指定安装软件源中其他版本的Docker:

$ sudo apt-cache madison docker-ce
    docker-ce | 17.11.0-ce-0~ubuntu | https://download.docker.com/linux/ubuntu xenial/edge                 amd64 Packages
    docker-ce | 17.10. 〇~ce-0~ubuntu | https : //download.d.ocker.com/linux/ubuntu xenial/edge amd64 Packages
    docker-ce \ 17.09. l~ce- 0~ubuntu | https : //download.d.ocker. com/1 inux/ubuntu     xenial/stable amd64 Раска으es
$ sudo apt-get instal1 docker-ce=17.11.〇~ce-O~ubuntu

image.gif

3.4 macOS 环境下安装 Docker

3.4.1 使用 Homebrew 安装

macOS 我们可以使用 Homebrew 来安装 Docker。

Homebrew 的 Cask 已经支持 Docker for Mac,因此可以很方便的使用 Homebrew Cask 来进行安装:

$ brew install --cask --appdir=/Applications docker
==> Creating Caskroom at /usr/local/Caskroom
==> We'll set permissions properly so we won't need sudo in the future
Password:          # 输入 macOS 密码
==> Satisfying dependencies
==> Downloading https://download.docker.com/mac/stable/21090/Docker.dmg
######################################################################## 100.0%
==> Verifying checksum for Cask docker
==> Installing Cask docker
==> Moving App 'Docker.app' to '/Applications/Docker.app'.
&#x1f37a;  docker was successfully installed!

image.gif

在载入 Docker app 后,点击 Next,可能会询问你的 macOS 登陆密码,你输入即可。之后会弹出一个 Docker 运行的提示窗口,状态栏上也有有个小鲸鱼的图标。

3.4.2 手动下载安装

如果需要手动下载,请点击以下链接下载 Install Docker Desktop on Mac

image.gif

如同 macOS 其它软件一样,安装也非常简单,双击下载的 .dmg 文件,然后将鲸鱼图标拖拽到 Application文件夹即可。

image.gif

从应用中找到 Docker 图标并点击运行。可能会询问 macOS 的登陆密码,输入即可。

image.gif

点击顶部状态栏中的鲸鱼图标会弹出操作菜单。

image.gif

第一次点击图标,可能会看到这个安装成功的界面,点击 "Got it!" 可以关闭这个窗口。

image.gif

启动终端后,通过命令可以检查安装后的 Docker 版本。
$ docker --version
Docker version 17.09.1-ce, build 19e2cf6

image.gif

3.4.3 镜像加速

鉴于国内网络问题,后续拉取 Docker 镜像十分缓慢,我们可以需要配置加速器来解决,我使用的是网易的镜像地址:http://hub-mirror.c.163.com

在任务栏点击 Docker for mac 应用图标 -> Perferences... -> Daemon -> Registry mirrors。在列表中填写加速器地址即可。修改完成之后,点击 Apply & Restart 按钮,Docker 就会重启并应用配置的镜像地址了。

image.gif

之后我们可以通过 docker info 来查看是否配置成功。
$ docker info
...
Registry Mirrors:
 http://hub-mirror.c.163.com
Live Restore Enabled: false

image.gif

3.5 Windows 10 环境下安装 Docker

注意:此方法仅适用于 Windows 10 操作系统专业版、企业版、教育版和部分家庭版!

Docker 并不是一个通用的,它依赖于存在并运行的 Linux 内核于已环境的工具。

Docker 真正的 Linux 是在已经运行的下一个隔离的文件环境,因此,它执行的效果制造于就地部署的 Linux主机。

Docker 必须部署在相应的 Linux 内核的系统上。如果其他系统想部署 Docker,则必须安装一个虚拟 Linux 环境。

image.gif

在 Windows 上部署 Docker 的方法都是先安装一个虚拟机,然后在安装 Linux 系统的虚拟机中运行 Docker。

Docker Desktop 是 Docker 在 Windows 10 和 macOS 上运行的方法的官方安装方式,这个仍然属于先在虚拟机中安装 Linux 然后再安装 Docker 的方法。

Docker Desktop 官方下载地址: Install Docker Desktop on Windows | Docker Documentation

3.5.1 安装 Hyper-V

Hyper-V 是微软开发的虚拟机,类似于 VMWare 或 VirtualBox,仅适用于 Windows 10。这是 Docker Desktop for Windows 所使用的虚拟机。

如果您必须在电脑上使用虚拟机(例如 Android 应用程序使用的虚拟机或以下其他版本),请不要使用 Hyper-V !

2.5.2 开启 Hyper-V

image.gif

程序和功能:

image.gif

启用或关闭 Windows 功能

image.gif

检测Hyper-V

image.gif

也可以通过命令启用 Hyper-V ,请管理员来启动菜单并以身份运行 PowerShell,执行以下命令:
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All

image.gif

2.5.3 安装 Docker Desktop for Windows

点击开始使用 Docker Desktop,并下载 Windows 的版本,如果你还没有登录,会注册要求登录:

image.gif

2.5.4 安装运行文件

点击下载 Docker for Windows 安装文件,一路完成完成安装。

image.gif

安装完成后,Docker会自动启动。通知栏上会出现个小鲸鱼的图标,这表示Docker正在运行。

桌边还有三个图标,如下图所示:

我们可以在执行版本 docker version 查看号,docker hello-world 来编写测试。

如果没启动,你可以在 Windows 搜索 Docker 来启动:

image.gif

启动后,也可以在通知栏上看到小鲸鱼图标:

如果启动中遇到因 WSL 2 导致地错误,请安装WSL 2

安装之后,就可以打开PowerShell并运行以下命令检测是否运行成功:

码头工人运行你好世界-世界

image.gif

在成功运行之后应该会出现以下信息:

image.gif

3.6 Windows 7、8 环境下安装 Docker

win7、win8等需要利用工具箱来安装,国内可以使用阿里云的镜像来下载,下载地址:http://mirrors.aliyun.com/docker-toolbox/windows/docker-toolbox/

安装比较简单,运行起来,点自动化就可以了,可以勾选自己需要的组件:

image.gif

docker toolbox 是一个工具集,它主要包含以下一些内容:

  • Docker CLI - 客户端,使用运行 docker 引擎创建和容器。
  • Docker Machine - 可以让你在 Windows 的引擎中运行 docker 命令。
  • Docker Compose - 使用运行 docker-compose 命令。
  • Kitematic - 这是 Docker 的 GUI 版本。
  • Docker QuickStart shell - 这是一个已经配置好Docker的环境。
  • Oracle VM Virtualbox - 虚拟机。
下载完成后,安装成功后,桌边会出现三个图标,直接点击如下图所示:

image.gif

点击 Docker QuickStart 图标来启动 Docker Toolbox 终端。

如果系统显示用户账户控制窗口来运行VirtualBox修改你的电脑,选择Yes。

image.gifimage.gif

$符号那你可以输入以下命令来执行。

$ docker 运行你好世界-世界

image.gif

无法在本地找到图像“hello-world:latest”无法在本地找到图像“hello-world:latest”

 拉存储库hello-world拉存储库你好-世界

 91c95931e552:下载完成91c95931e552 :下载完成 

 a8219747be10:下载完成:下载完成 

 状态:为 hello-world 下载了更新的图像:最新状态:为hello - world下载了更新的图像:最新 

 来自 Docker 的您好。来自Docker的您好。  

 此消息表明您的安装似乎工作正常。此消息表明您的安装似乎工作正常。

 为了生成此消息,Docker 采取了以下步骤:为了生成此消息,Docker采取了以下步骤: 

  1. Docker Engine CLI 客户端联系了 Docker Engine 守护进程。1. Docker Engine CLI 客户端联系了Docker Engine守护进程。    

  2. Docker Engine 守护进程从 Docker Hub 拉取“hello-world”镜像。

     (假设它还没有在本地可用。)

  3. Docker 引擎守护进程从该镜像创建了一个新容器,该容器运行

     生成您当前正在阅读的输出的可执行文件。

  4. Docker Engine 守护程序将该输出流式传输到 Docker Engine CLI 客户端,后者将其发送

     到您的终端。

要尝试更雄心勃勃的事情,您可以运行Ubuntu容器:
$ docker run -it ubuntu bash


目录
相关文章
|
10月前
|
应用服务中间件 网络安全 nginx
手把手教你使用 Docker 部署 Nginx 教程
本文详解Nginx核心功能与Docker部署优势,涵盖镜像拉取、容器化部署(快速、挂载、Compose)、HTTPS配置及常见问题处理,助力高效搭建稳定Web服务。
4132 4
|
11月前
|
人工智能 Ubuntu 数据可视化
【详细教程】如何在Ubuntu上本地部署Dify?
Dify 是一个开源的大语言模型应用开发平台,支持低代码/无代码开发,提供多模型接入、Agent框架、RAG检索增强生成等功能,助力快速构建AI应用。支持本地部署,提供详尽文档与可视化界面,适用于聊天助手、文本生成、自动化任务等多种场景。
10144 124
|
12月前
|
Ubuntu 安全 Linux
CentOS与Ubuntu的深度对比与分析
Ubuntu更新频繁、文档丰富,适用于云服务与容器部署。 与CentOS的比较,Ubuntu基于Debian,而CentOS则源自RHEL。在软件包格式上,Ubuntu采用.deb和.snap,而CentOS则使用.rpm和flatpak。更新方面,Ubuntu使用apt,而CentOS则依赖yum。尽管CentOS以稳定性见长,不常对包进行更新,但这并不意味着Ubuntu在安全性上逊色。事实上,Ubuntu提供了更为丰富的文档和免费的技术支持。此外,Ubuntu的服务器版本在云服务和容器部署方面拥有更多的优势。
|
11月前
|
关系型数据库 数据库 PostgreSQL
docker 安装 Postgres 17.6
本文介绍如何通过Docker安装和配置PostgreSQL 17.6。内容包括拉取镜像、导出配置文件、运行容器并挂载数据与配置文件目录,以及进入容器使用psql操作数据库的完整步骤,便于持久化管理和自定义配置。
1670 3
docker 安装 Postgres 17.6
|
10月前
|
NoSQL 算法 Redis
【Docker】(3)学习Docker中 镜像与容器数据卷、映射关系!手把手带你安装 MySql主从同步 和 Redis三主三从集群!并且进行主从切换与扩容操作,还有分析 哈希分区 等知识点!
Union文件系统(UnionFS)是一种**分层、轻量级并且高性能的文件系统**,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem) Union 文件系统是 Docker 镜像的基础。 镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。
936 6
|
10月前
|
存储 搜索推荐 数据库
🚀 RAGFlow Docker 部署全流程教程
RAGFlow是开源的下一代RAG系统,融合向量数据库与大模型,支持全文检索、插件化引擎切换,适用于企业知识库、智能客服等场景。支持Docker一键部署,提供轻量与完整版本,助力高效搭建私有化AI问答平台。
8342 8
|
10月前
|
Java Linux 虚拟化
【Docker】(1)Docker的概述与架构,手把手带你安装Docker,云原生路上不可缺少的一门技术!
1. Docker简介 1.1 Docker是什么 为什么docker会出现? 假定您在开发一款平台项目,您的开发环境具有特定的配置。其他开发人员身处的环境配置也各有不同。 您正在开发的应用依赖于您当前的配置且还要依赖于某些配置文件。 您的企业还拥有标准化的测试和生产环境,且具有自身的配置和一系列支持文件。 **要求:**希望尽可能多在本地模拟这些环境而不产生重新创建服务器环境的开销 问题: 要如何确保应用能够在这些环境中运行和通过质量检测? 在部署过程中不出现令人头疼的版本、配置问题 无需重新编写代码和进行故障修复
756 2
|
11月前
|
人工智能 安全 Ubuntu
保姆级教程 | 在Ubuntu上部署Claude CodeUI全过程
Claude Code Plan Mode 是 Anthropic 推出的智能编程助手功能,采用只读分析模式,保障代码安全的同时提供AI驱动的项目规划与风险评估。该模式平均每周为开发者节省27小时,显著提升开发效率与项目成功率,是AI编程领域的重要创新。
13905 10
|
12月前
|
缓存 Ubuntu Docker
Ubuntu环境下删除Docker镜像与容器、配置静态IP地址教程。
如果遇见问题或者想回滚改动, 可以重启系统.
665 16