docker安装菜鸟教程,docker中安装docker

docker安装菜鸟教程,docker中安装docker,快速安装Docker详细步骤教程

本文主要为大家介绍快速安装Docker的详细分步教程。有需要的朋友可以借鉴一下,希望能有所帮助。祝大家进步很大,早日升职加薪。

目录

一、Docker 1的基本构成。Docker服务器和client客户端-服务器(C/S):浏览器-服务器(B/S) :2。Docker 2的基本组成。Docker 3的在线安装。Docker内网环境4的离线安装。运行第一个容器,了解Docker的不同之处。在这样的花展之后,

一、Docker的基本组成

1、Docker服务端和客户端

在解释Docker的基本组件之前,我们需要了解Docker是一个客户端-服务器(C/S)架构程序。不知道什么是C/S架构吧?我在这里简单说明一下。一般来说,有两种类型的应用程序架构:

客户端-服务端(C/S) :

客户机-服务器(C/S)=客户机-服务器。比如:QQ、迅雷、快播等。夜深人静的时候,你躲在被子里,用自己的快播神器看不知名的大片,快播软件需要和服务器进行通信,服务器不断的向快播神器返回各种画面信息。

这种需要安装软件才能与服务器进行数据通信的方式就是C/S架构。

C/S体系结构

浏览器 - 服务端(B/S) :

浏览器服务器(B/S)=浏览器服务器。比如所有的网站都是B/S架构。你可以找你的朋友,借个字,要个网址,直接输入浏览器,开开心心的看不知名的大片。这种不用安装软件直接用网站看电影的方式属于B/S架构。

B/S体系结构

一般来说,C/S的每个客户端都必须安装和配置专门的软件。B/S最大的好处就是不需要安装任何专门的软件,只要有一个浏览器就可以了。

Docker engine是一个c/s结构的应用程序。Docker客户端只需要向Docker服务器或守护进程发送一个请求,服务器或守护进程完成所有工作并返回结果。主要组件见下图:

服务器是一个常驻进程。REST API实现了客户端和服务器端的交互协议。CLI实现了对容器和图像的管理,为用户提供了统一的操作界面。

2、Docker的基本组成

从上一节我们可以知道,Docker采用C/S架构,客户端通过接口与服务器进程进行通信,实现容器的构造、操作和发布。客户端和服务器可以在同一个群集中运行,也可以跨主机远程通信。

图片:

Docker图像是一个只读模板,通过它可以创建容器。镜像可以创建多个容器,就像java中的类和对象一样。类是镜子,容器是对象。

容器(集装箱):

Docker使用容器来运行应用程序。容器是从镜像创建的运行实例。可以启动,开始,停止,删除。每个容器都是一个隔离的安全平台。

仓库(储存库):

仓库是存放图像的地方,分为公有仓库和私有仓库两种形式。其中官方仓库Docker Hub是国外的,而国内很多公司如阿里云、华为云等都有自己的容器服务。Docker默认使用国外仓库,我们在国内访问比较慢,学习的时候需要配置镜像加速。

以上介绍,我觉得对于刚学Docker的老铁来说,可能有点生涩难懂。刚学Docker的时候也是这样。不过没关系,我举个通俗的例子:

我们需要注意的是,Docker本身并不是一个容器,它只是一个创建容器的工具,一个应用容器引擎。

要理解Docker,你只需要知道两件事:

首先,构建、运送和运行被翻译为:构建映像、运输映像和运行映像。

构建:镜像就像一个容器,包含文件、运行环境等资源。

船(运输镜):在主机和仓库之间运输,这里的仓库就像一个超级码头。

运行:运行映像是一个容器,容器就是程序运行的地方。

例如:

父亲年纪大了,想回老家盖房子。我们来到老家,找了个平时热闹的地方,买了块地基盖了房子。于是我和父亲一起搬水泥,搬石头,搬各种材料,费了好大劲终于把房子盖好了。结果住了一段时间后,父亲说这里太吵了,想换个安静的地方。按照传统的方法,只能搬石头,砍柴,画图,重新盖房子。然而,哆啦a梦从百宝袋里掏出一根魔杖,可以把我和爸爸建的房子包装成“镜像”,放进我的背包里。

等我到了一个安静的地方,找了一个空地,我就用这个“镜像”复制一个房子,放在那边,拿着包入住。所以Docker的第二点是:构建一次,随处运行翻译成:一旦构建,就可以随处使用。

从上面的例子来看,我包里的镜子就是Docker镜子,而我在一个安静的空地上,用魔杖复制的一个房子就是Docker容器,我的背包就是Docker仓库。

既然我和父亲盖的房子可以包装做成镜像,那么别人的房子也可以。这样就可以直接住进各种豪宅了吗?那不是很好吗?这么多房子的镜像,需要一个大袋子来装。结果,这个大包用专业术语来说就变成了仓库。所以官方提供了Docker Hub给大家分享房子图像。当然,你也可以搞个私人仓库,一个人玩,不把自己的房子形象分享给别人。

二、Docker的在线安装

Docker官方推荐安装在Ubuntu中,因为Docker是基于Unbantu发布的,一般都是Ubuntu率先用Docker更新或打补丁的问题。在Centos的许多版本中,不支持更新某些最新的服务包。

由于我们所有的学习环境都使用Centos,这里的Centos上安装了Docker。

注意:

Linux需要内核3.0以上。

CentOS需要版本7。

现在有了官方提示,我们如何看待系统内核?

1.使用uname命令进行验证。

[root@localhost docker]# uname -r

3.10.0-1127.el7.x86_64

2.卸载已安装的Docker

如果已经安装了Docker,请先卸载再重新安装,保证整体环境一致。

yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-log rotate docker-log rotate docker-engine

3.安装yum工具包和存储驱动程序。

yum install -y yum-utils

4.设置镜像仓库。

yum-config-manager

- add-repo

https://download.docker.com/linux/centos/docker-ce.repo

#以上方法默认来自国外,不推荐。

#国内,推荐阿里云docker图片。

yum-config-manager

- add-repo

https://mirrors . aliyun . com/docker-ce/Linux/centos/docker-ce . repo

5.安装docker

注:docker-ce社区版和ee企业版。我们可以在这里使用社区版本。

yum安装docker-ce docker-ce-CLI container d . io

6.启动docker

系统启动docker

7、设置开机启动。

systemctl启用docker

8.安装后检查Docker版本。

[root@localhost docker]# docker版本

客户:Docker引擎-社区

版本:19.03.13

API版本:1.40

Go版本:go1.13.15

Git提交:4484c46d9d

建造时间:2020年9月16日星期三17时03分45秒

操作系统/架构:linux/amd64

实验性:错误

服务器:Docker引擎-社区

发动机:

版本:19.03.13

API版本:1.40(最低版本为1.12)

Go版本:go1.13.15

Git提交:4484c46d9d

建造时间:2020年9月16日星期三17时02分21秒

操作系统/架构:linux/amd64

实验性:错误

集装箱id:

版本:1.3.7

git commit:8 FBA 4 e 9 a 7d 01810 a 393d 5d 25 a 3621 DC 101981175

runc:

版本:1.0.0-rc10

git commit:DC 9208 a 3303 feef 5b 3839 f 4323d 9 beb 36 df 0 a9 DD

docker-初始化:

版本:0.18.0

GitCommit: fec3683

9.配置阿里云镜像加速。

鉴于国内网络问题,Docker镜像后续的拉取非常慢,我们可能需要配置一个加速器来解决这个问题。

登录阿里云

搜索“容器镜像服务”

获取加速器地址

通过修改守护进程配置文件/etc/docker/daemon.json来使用加速器

tee/etc/docker/daemon。JSON- EOF

{

注册表-镜像:[ https://pak 31 uuv。镜子。阿里云。com ]

}

文件结束

# 重启码头工人

系统ctl守护程序-重新加载

系统ctl重新启动码头工人

注意:

阿里云的本人自己账号的镜像地址(需要自己注册有一个属于你自己的):https://xxxx.mirror.aliyuncs.com

10、验证配置是否成功

码头信息

# 输出如下

客户:

调试模式:假

服务器:

集装箱:15个

跑步:12

暂停:0

停止:3

图像:24

服务器版本:19.03.6

存储驱动程序:重叠2

后备文件系统:extfs

支持d_type: true

本机覆盖差异:真

日志驱动程序:json-file

c组驱动程序:系统d

插件:

音量:本地

网络:网桥主机ipvlan macvlan空覆盖

日志:AWS日志fluent d gcplogs gelf journal d JSON-file本地日志条目splunk系统日志

蜂群:不活动

运行时:runc

默认运行时:runc

初始化二进制文件:docker-初始化

容器版本:

runc版本:

初始化版本:

安全选项:

表观摩尔

seccomp

配置文件:默认

内核版本:4 .15 .0-96-通用

操作系统:LTS Ubuntu 18。04 .四

OSType: linux

架构:x86_64

中央处理器(central processing units的缩写)个

总内存:7.767千兆字节

名称:码头服务

ID:YZSB:WJFB:RS4K:V22L:IVGK:GZVZ:uql 4:MCCR:MQ4X:6hr:T5RM:53m 5

码头工人根目录:/var/lib/docker

调试模式:假

注册地:https://index.docker.io/v1/

标签:

实验性:错误

不安全的注册表:

127.0.0.0/8

注册表镜像:

https://k7da99jp.mirror.aliyuncs.com/

https://dockerhub.azk8s.cn/

https://registry.docker-cn.com/

启用实时还原:假

警告:不支持交换限制

三、Docker内网环境的离线安装

由于在很多情况下需要安装码头工人的虚拟机或服务器无法访问互联网,因此需要离线安装码头工人。

准备工作

一台可以访问互联网的虚拟机或服务器,操作系统不限,改机器可以访问拟安装码头工人的机器

第一步:以下操作在可以访问互联网的机器进行

下载安装包

访问https://download.docker.com/linux/static/stable/选择合适的版本并下载,

笔者用的是:

https://下载。码头工人。com/Linux/static/stable/x86 _ 64/docker-18。09 .6 .tgz

第二步:将下载的安装包上传到拟安装的机器

第三步:以下操作在拟安装的机器上进行

1、解压缩安装包

tar -zxvf docker-18.09.6.tgz

2、复制解压缩后的文件到指定文件夹

cp docker/* /usr/bin/

3、注册编辑码头工人服务

vim/etc/systemd/system/docker。服务

4、复制下列内容到该文档中

[单位]

描述码头工人应用程序容器引擎

文档=https://个文档。码头工人。com

之后=网络-在线。目标防火墙d。服务

需求=网络-在线。目标

[服务]

类型=通知

#默认情况下不对cgroups使用systemd,因为委托问题仍然存在

#存在,系统d当前不支持所需的c组功能集

#用于码头工人操作的集装箱

ExecStart=/usr/bin/dockerd

exec reload=/bin/kill-s HUP $ main PID

#具有非零限制*s会由于记帐开销而导致性能问题

#在内核中。我们建议使用cgroups进行容器本地记帐。

限制文件=无穷大

LimitNPROC=无穷大

极限核心=无穷大

#如果您的系统d版本支持,请取消对TasksMax的注释。

#只有系统d 226及以上版本支持此版本。

# TasksMax=无穷大

TimeoutStartSec=0

#将代表设置为是的,以便系统d不会重置码头工人容器的cgroups

代表=是

#仅终止码头工人进程,而不是c组中的所有进程

KillMode=进程

#如果码头工人进程过早退出,请重新启动它

重启=开-失败

StartLimitBurst=3

StartLimitInterval=60s秒秒

[安装]

WantedBy=多用户。目标

5、添加权限后启动

chmod x/etc/systemd/system/docker。服务

6、重新加载配置文件

系统ctl守护程序-重新加载

7、启动码头工人

系统启动码头工人

8、设置开机自启

系统ctl启用码头服务

9、验证是否安装成功

系统状态记录

docker -v

四、运行第一个容器

下面以Nginx为例,体验一下Docker是如何运行容器的。

#下载图像

码头工人拉nginx

#运行容器

docker run-name nginx-container-p 80:80-d nginx

输入浏览器虚拟机地址以访问Nginx。

以上是Docker快速安装详细步骤教程的详细内容。关于Docke安装步骤的更多信息,请关注我们的其他相关文章!

docker安装菜鸟教程,docker中安装docker