转载自:https://www.bilibili.com/read/cv15181036/?from=readlist



官方一键安装脚本

补充时间:[2020年4月22日 11:00:59]

一键安装Docker-ce以及Docker-compose:

##[docker]
#国外
curl -fsSL https://get.docker.com | bash -s docker
#国内
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
curl -fsSL https://get.docker.com -o get-docker.sh && chmod +x get-docker.sh && ./get-docker.sh
#测试安装结果
docker-info ##[docker-compose]
sudo curl -L "https://github.com/docker/compose/releases/download/1.25.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose && chmod +x /usr/local/bin/docker-compose
#测试安装结果
docker-compose version

温馨提示: 目前最新的Docker版本为 (20.10.12)默认使用overlay2 作为存储驱动,对于已支持该驱动的 Linux 发行版,不需要任何进行任何额外的配置,可使用lsmod | grep "overlay"命令查看当前系统内核是否支持 overlay2 ,另外需要非常注意devicemapper 存储驱动已经在 docker 18.09 版本中被废弃,所以在后续的安Docker装中无需安装devicemapper支持。

CentOS 中利用 yum 安装 Docker / Docker-compose

# (1) 卸载机器上docker或者docker-engine旧版本以及相关的依赖项
yum remove -y docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine # (2) 在新主机上首次安装 Docker Engine 之前,您需要 设置 Docker 稳定的存储库。
sudo yum install -y yum-utils
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
# 或者手动设置官方源
# sudo tee /etc/yum.repos.d/docker.repo <<-'EOF'
# [dockerrepo]
# name=Docker Repository
# baseurl=https://yum.dockerproject.org/repo/main/centos/$releasever/
# enabled=1
# gpgcheck=1
# gpgkey=https://yum.dockerproject.org/gpg
# EOF # 安装最新版本的 Docker Engine 和 containerd
# Docker Community Edition (CE) 对于希望开始使用Docker并尝试基于容器的应用程序的开发人员和小型团队来说非常理想。
# 如果提示接受 GPG 密钥,请验证指纹是否匹配 060A 61C5 1B55 8A7F 742B 77AA C52F EB6B 621E 9F35,如果是,接受它。
sudo yum install docker-ce docker-ce-cli containerd.io docker-compose # 安装特定版本的 Docker Engine,请在列出可用版本中选择并安装,
# 即 包名( docker-ce) 加上版本字符串(第二列) 从第一个冒号 ( :),直到第一个连字符,由 一个连字符 ( -)。 例如 docker-ce-18.09.1.
yum list docker-ce --showduplicates | sort -r
# docker-ce.x86_64 3:18.09.5-3.el7 docker-ce-stable
# docker-ce.x86_64 3:18.09.5-3.el7 @docker-ce-stable #当前使用版本
# docker-ce.x86_64 3:19.03.15-3.el7 docker-ce-stable
# docker-ce.x86_64 3:19.03.14-3.el7 docker-ce-stable
sudo yum install -y docker-ce-19.03.15 docker-ce-cli-19.03.15 containerd.io docker-compose # 更新docker-ceDocker CE有三种更新通道是稳定通道、测试通道和夜间通道
yum -y upgrade docker-ce # Docker 是一个 C/S 架构的服务,安装好 docker 之后需要启动 docker 软件后才能使用 docker 命令;
systemctl start/status docker # 启动docker-ce # 查看docker启动状态
docker version
Client:
Version: 18.09.5
API version: 1.39
Go version: go1.10.8
Git commit: e8ff056
Built: Thu Apr 11 04:43:34 2019
OS/Arch: linux/amd64 # 移出docker-ce
$ sudo yum remove docker-ce
#主机上的映像、容器、卷或自定义配置文件不会自动删除。删除所有图像、容器和卷:
$ sudo rm -rf /var/lib/docker # 通过运行以下命令拉取并运行hello-world镜像验证 Docker Engine 是否已正确安装
docker pull hello-world
docker images
docker run hello-world

Ubuntu 中利用 apt 安装 Docker / Docker-compose

Ubuntu安装Docker参考: https://docs.docker.com/install/linux/docker-ce/ubuntu/

# 1.卸载旧版本
sudo apt-get remove docker docker-engine docker.io containerd runc # 2.更新apt包索引并安装包以允许apt在HTTPS上使用存储库
sudo apt-get install -y \
apt-transport-https \
ca-certificates \
curl \
gnupg-agent \
software-properties-common # 3.添加Docker官方GPG密钥 # -fsSL
sudo curl https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - # 4.通过搜索指纹的最后8个字符进行密钥验证
sudo apt-key fingerprint 0EBFCD88 # 5.设置稳定存储库
sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable" # 6.Install Docker Engine 默认最新版本
sudo apt-get update && sudo apt-get install -y docker-ce=5:20.10.7~3-0~ubuntu-focal docker-ce-cli=5:20.10.7~3-0~ubuntu-focal containerd.io docker-compose
# - 强制IPv4
# sudo apt-get -o Acquire::ForceIPv4=true install -y docker-ce=5:19.03.15~3-0~ubuntu-focal docker-ce-cli=5:19.03.15~3-0~ubuntu-focal containerd.io docker-compose # 7.安装特定版本的Docker引擎,请在repo中列出可用的版本
apt-cache madison docker-ce
# docker-ce | 5:20.10.6~3-0~ubuntu-focal| https://download.docker.com/linux/ubuntu focal/stable amd64 Packages
# docker-ce | 5:19.03.15~3-0~ubuntu-focal | https://download.docker.com/linux/ubuntu xenial/stable amd64 Packages
# 使用第二列中的版本字符串安装特定的版本,例如:5:18.09.1~3-0~ubuntu-xenial。
# $sudo apt-get install docker-ce=<VERSION_STRING> docker-ce-cli=<VERSION_STRING> containerd.io #8.将当前用户加入docker用户组然后重新登陆当前用户使得低权限用户
sudo gpasswd -a ${USER} docker
# sudo gpasswd -a weiyigeek docker #9.加速器建立
mkdir -vp /etc/docker/
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"data-root":"/var/lib/docker",
"registry-mirrors": ["https://xlx9erfu.mirror.aliyuncs.com"],
"exec-opts": ["native.cgroupdriver=systemd"],
"storage-driver": "overlay2",
"log-driver": "json-file",
"log-level": "warn",
"log-opts": {
"max-size": "100m",
"max-file": "10"
},
"live-restore": true,
"dns": ["8.8.8.8","223.6.6.6"],
"insecure-registries": ["harbor.weiyigeek.top"]
}
EOF # 9.自启与启动
sudo systemctl daemon-reload
sudo systemctl enable docker
sudo systemctl restart docker

docker-compose的安装补充时间:[2020年1月22日 10:54:55],可能随着时间推移最新版本与下述版本不同,请按照下面方式安装最新的docker-compose版本即可。

方式1:安装 docker-compose: [需要安装大于或者等于1.6版本的 Docker ]

https://docs.docker.com/compose/ -> 选择InstallCompose

#安装docker-compose
#切换为root权限下载并安装docker-compose ( current stable release (v1.25.0) )
$ curl -L "https://github.com/docker/compose/releases/download/1.25.5/docker-compose-$(uname -s)-$(uname -m)" > /usr/local/bin/docker-compose
$ chmod +x /usr/local/bin/docker-compose

方式2:安装Docker-Compose

#在centos7中使用python-pip安装docker-compose
$yum install -y python3
$pip3 install pip --upgrade
[root@vm-1575613390 ~]# pip --version
pip 19.3.1 from /usr/local/lib/python3.6/site-packages/pip (python 3.6) $pip3 install docker-compose

目前最新版本的 docker 默认优先采用 overlay2 的存储驱动,对于已支持该驱动的 Linux 发行版,不需要任何进行任何额外的配置





解决上述问题后, 执行如下命令验证安装:

docker pull hello-world
docker images
docker run hello-world





# 1.查看系统中的VM,如果没有开启过就是false状态。
Get-VM
Get-VMProcessor -VMName Server2019 | fl # 2.显示未True就是已经开启嵌套虚拟化了,但是这个功能只针对Hyper-V虚拟机,所以,为什么要装虚拟机到Hyper-V中
Set-VMProcessor -ExposeVirtualizationExtensions $true -VMName Server2019

例如: 利用Docker Desktop部署我的blog主页

PS C:\> mkdir github; cd .\github\
PS C:\github> Invoke-WebRequest -Uri https://github.com/WeiyiGeek/WeiyiGeek/archive/refs/heads/master.zip -OutFile blog.zip
PS C:\github> Expand-Archive -Path .\blog.zip -DestinationPath .
PS C:\github> mv .\WeiyiGeek-master\ blog

# 方式1
curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://f1361db2.m.daocloud.io # 方式2
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["http://f1361db2.m.daocloud.io"]
}
EOF

方式2:使用阿里云容器镜像服务加速器

推荐安装1.10.0以上版本的Docker客户端,您可以通过修改daemon配置文件/etc/docker/daemon.json来使用加速器:

#方法1.常规加速
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://xlx9erfu.mirror.aliyuncs.com"]
}
EOF #方法2:对于 1.12 以前的版本, dockerd 换成 docker daemon
#注:编辑docker.service文件
ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock --registry-mirrors=https://xlx9erfu.mirror.aliyuncs.com #方法3:Docker-CE17.12版本以及之后(CentOS7.0)
vi /usr/lib/systemd/system/docker.service
ExecStart=/usr/bin/dockerd --registry-mirror=https://xlx9erfu.mirror.aliyuncs.com #通用启动
sudo systemctl daemon-reload #重载守护
sudo systemctl restart docker #检查加速器是否生效
sudo ps -ef | grep dockerd
root 5346 1 0 19:03 ? 00:00:00 /usr/bin/dockerd --registry-mirror=https://jxus37ad.mirror.aliyuncs.com

补充一键配置:

# Docker中国 mirror
# export REGISTRY_MIRROR="https://registry.docker-cn.com"
# 腾讯云 docker hub mirror
# export REGISTRY_MIRROR="https://mirror.ccs.tencentyun.com"
# 华为云镜像
# export REGISTRY_MIRROR="https://05f073ad3c0010ea0f4bc00b7105ec20.mirror.swr.myhuaweicloud.com"
# DaoCloud 镜像
# export REGISTRY_MIRROR="http://f1361db2.m.daocloud.io"
# 阿里云 docker hub mirror
# export REGISTRY_MIRROR=https://registry.cn-hangzhou.aliyuncs.com
export REGISTRY_MIRROR=https://xlx9erfu.mirror.aliyuncs.com
curl -sSL https://kuboard.cn/install-script/set_mirror.sh | sh -s ${REGISTRY_MIRROR}

2.云原生之Docker容器环境安装实践的更多相关文章

  1. 8.云原生之Docker容器镜像构建最佳实践浅析

    转载自:https://www.bilibili.com/read/cv15220861/?from=readlist 本章目录 0x02 Docker 镜像构建最佳实践浅析 1.Dockerfile ...

  2. 5.云原生之Docker容器网络介绍与实践

    转载自:https://www.bilibili.com/read/cv15185166/?from=readlist 例如, 当在一台未经过特殊网络配置的centos 或 ubuntu机器上安装完d ...

  3. 7.云原生之Docker容器Dockerfile镜像构建浅析与实践

    转载自:https://www.bilibili.com/read/cv15220707/?from=readlist Dockerfile 镜像构建浅析与实践 描述:Dockerfile是一个文本格 ...

  4. 6.云原生之Docker容器Registry私有镜像仓库搭建实践

    转载自:https://www.bilibili.com/read/cv15219863/?from=readlist #1.下载registry仓库并设置数据存放的目录(并生成认证账号密码) doc ...

  5. 4.云原生之Docker容器数据持久化介绍与实践

    转载自:https://www.bilibili.com/read/cv15182308/?from=readlist #### 创建一个web容器并创建一个数据卷挂载到容器的/webapp目录下(默 ...

  6. 3.云原生之Docker容器三大核心概念介绍

    转载自:https://www.bilibili.com/read/cv15181760/?from=readlist docker search --no-trunc=false [镜像名称] #搜 ...

  7. 1.云原生之Docker容器技术基础知识介绍

    转载自:https://www.bilibili.com/read/cv15180540/?from=readlist

  8. Centos7环境下Docker容器的安装与卸载

    Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的.可移植的.自给自足的容器.开发者在笔记本上编译测试通过的容器可以批量地在生产环境中部署,包括VMs(虚拟机).bare metal. ...

  9. 每周荐书:云原生、Docker、Web算法(评论送书)

    每周荐书:云原生.Docker.Web算法(评论送书) 感谢大家对每周荐书栏目的支持,先公布下上周中奖名单 名优秀评论可以免费获得此书.   云原生应用架构实践 云原生架构,关注简化开发流程.提升研发 ...

随机推荐

  1. osx系统使用技巧 -- 虚拟机virtualbox

    p.p1 { margin: 0; font: 18px Menlo; color: rgba(255, 255, 255, 1); background-color: rgba(102, 130, ...

  2. Linux教我们丢掉键盘

    前言 本篇博客并非博主编写,而是跟着黑马教程整理的. 因为Linux都是一些操作命令,也不想深入研究,所以就用此博客记录一下平时的基本知识,方便日后查找. 一.常用命令 命令 对应英文 作用 ls l ...

  3. Fiddler开启调试模式

    分别键入以下命令 prefs set fiddler.debug.extensions.showerrors True prefs set fiddler.debug.extensions.verbo ...

  4. linux Error downloading packages free 0 * needed 71 k

    linux  Error downloading packages free   0      * needed 71 k 原因:硬盘空间不足 查看磁盘大小 /]# df -hl 从/主目录开始搜索, ...

  5. S32K148-CAN收发

    最近在搞一个转换板开发,大概意思把CAN信号转换成SPI信号,方案有两种:1)通过硬件电路直接把信号的bit位一位一位移给两个集成芯片:2)通过MCU接收CAN信号,再把信号变量转换成SPI信号发送给 ...

  6. 论文阅读 TEMPORAL GRAPH NETWORKS FOR DEEP LEARNING ON DYNAMIC GRAPHS

    14 TEMPORAL GRAPH NETWORKS FOR DEEP LEARNING ON DYNAMIC GRAPHS link:https://scholar.google.com.hk/sc ...

  7. mysql面试题整理

    1 myisam 和 innodb 引擎的区别 innodb 支持事务,外键,myisam 不支持 innodb 支持 mvcc ,myisam 不支持 innodb 支持表锁.行锁,myisam 仅 ...

  8. 基于SqlSugar的开发框架循序渐进介绍(12)-- 拆分页面模块内容为组件,实现分而治之的处理

    在早期的随笔就介绍过,把常规页面的内容拆分为几个不同的组件,如普通的页面,包括列表查询.详细资料查看.新增资料.编辑资料.导入资料等页面场景,这些内容相对比较独立,而有一定的代码量,本篇随笔介绍基于V ...

  9. 二重循环中的break与continue

    二重循环中的break和continue用于控制本层循环,注意其不会影响外层循环的执行,这边和C中的break和continue的作用范围是一样的,也符合逻辑 example: 点击查看代码 for ...

  10. Linux服务器挂载windows共享文件夹和nas存储

    需求: 公司有3.4T多的小文件需要copy到公司内部的nas存储中,由于小文件太多,数据量太大,整盘copy时速度极慢:只能人工对3.4T多的数据分批次的导入,这对于搞计算机的来说是不能忍受的,于是 ...