微服務之——docker 安裝

docker 安裝

一、安裝Docker

本案例要求配置本地yum源並安裝Docker:

  • 準備1臺虛擬機,IP為192.168.137.161,網絡設置為NAT模式
  • 安裝docker
  • 關閉防火牆
  • 關閉Seinux

實現此案例需要按照如下步驟進行。

步驟一:配置yum源

1、Docker 要求 CentOS 系統的內核版本高於 3.10 ,查看本頁面的前提條件來驗證你的CentOS 版本是否支持 Docker 。

通過 命令查看你當前的內核版本 : [root@localhost docker]# uname -r

2、安裝需要的軟件包, yum-util 提供yum-config-manager功能,另外兩個是devicemapper驅動依賴的

[root@localhost docker]# yum install -y yum-utils device-mapper-persistent-data lvm2

3、設置yum源

[root@localhost docker]# yum-config-manager –add-repo https://download.docker.com/linux/centos/docker-ce.repo

或者 [root@localhost docker]# yum-config-manager –add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

[root@localhost docker]# yum list docker-ce –show-duplicates #查看源裡docker 的版本

4、安裝docker

[root@localhost docker]# yum install docker-ce #ce屬於社區版,EE屬於企業版

5、Docker配置文件 – daemon.json

daemon.json 文件是 docker 的配置參數,默認安裝 docker 後是沒有這個文件的,需要手動來創建:

如果在 daemon.json 文件中進行配置,需要 docker 版本高於 1.12.6 (在這個版本上不生效,1.13.1 以上是生效的)

[root@localhost docker]# vim /etc/docker/daemon.json

{

“graph”: “/data/docker”, # docker的工作目錄

“storage-driver”: “overlay2”, # 存儲驅動

“insecure-registries”: [“registry.access.redhat.com”, “quay.io”], # 倉庫

“registry-mirrors”: [“https://q2gr04ke.mirror.aliyuncs.com”], # 阿里雲的加速源

“bip”: “192.168.2.161/24”, # ip地址的定位,最好與外界物理機能直接互通

“exec-opts”: [“native.cgroupdriver=systemd”], # cpu內存資源的控制組

“live-restore”: true # docker引擎死了,不影響docker引擎啟動的容器

}

6、啟動服務,開機自啟

[root@localhost docker]# systemctl enable docker

[root@localhost docker]# systemctl start docker

二、基本概念

微服務之——docker 安裝

在docker 中容器是基於鏡像啟動的,鏡像是啟動容器的核心

鏡像採用分層設計,使用快照的COW 技術,確保底層數據不丟失

微服務之——docker 安裝

Docker hub鏡像倉庫

https://hub.docker.com

Docker 官方提供公共鏡像的倉庫(Rdgistry)

三、查看 docker 信息:

[root@localhost docker]# docker Info

Client:

Debug Mode: false

Server:

Containers: 0 # 服務器的容器個數

Running: 0

Paused: 0

Stopped: 0

Images: 0

Server Version: 19.03.6 # 服務器版本

Storage Driver: overlay2 # 存儲引擎

Backing Filesystem: xfs # 底層的操作系統

Supports d_type: true

Native Overlay Diff: true

Logging Driver: json-file

Cgroup Driver: systemd # Cgroup 驅動

Plugins:

Volume: local

Network: bridge host ipvlan macvlan null overlay

Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog

Swarm: inactive

Runtimes: runc

Default Runtime: runc

Init Binary: docker-init

containerd version: b34a5c8af56e510852c35414db4c1f4fa6172339

runc version: 3e425f80a8c931f88e6d94a8c831b9d5aa481657

init version: fec3683

Security Options:

seccomp

Profile: default

Kernel Version: 3.10.0-1062.el7.x86_64

Operating System: CentOS Linux 7 (Core)

OSType: linux

Architecture: x86_64

CPUs: 1 # 使用的cpu核數

Total Memory: 972.4MiB # 內存大小

Name: localhost.localdomain

ID: 4653:5R7A:NMOC:G3KH:CBJ2:A2AZ:HMNZ:YSFG:FTZG:UOQP:XODN:RRTT

Docker Root Dir: /data/docker # 存放路徑

Debug Mode: false

Registry: https://index.docker.io/v1/

Labels:

Experimental: false

Insecure Registries:

quay.io

registry.access.redhat.com

127.0.0.0/8

Registry Mirrors:

https://q2gr04ke.mirror.aliyuncs.com/ # 鏡像

Live Restore Enabled: true

WARNING: bridge-nf-call-iptables is disabled

WARNING: bridge-nf-call-ip6tables is disabled


四、查看docker版本

[root@localhost docker]# docker version

Client: Docker Engine – Community

Version: 19.03.8

API version: 1.40

Go version: go1.12.17

Git commit: afacb8b

Built: Wed Mar 11 01:27:04 2020

OS/Arch: linux/amd64

Experimental: false

Server: Docker Engine – Community

Engine:

Version: 19.03.8

API version: 1.40 (minimum version 1.12)

Go version: go1.12.17

Git commit: afacb8b

Built: Wed Mar 11 01:25:42 2020

OS/Arch: linux/amd64

Experimental: false

containerd:

Version: 1.2.13

GitCommit: 7ad184331fa3e55e52b890ea95e65ba581ae3429

runc:

Version: 1.0.0-rc10

GitCommit: dc9208a3303feef5b3839f4323d9beb36df0a9dd

docker-init:

Version: 0.18.0

GitCommit: fec3683


分享到:


相關文章: