docker安装部署实战详细手册(代码片段)

Xd聊架构 Xd聊架构     2023-01-26     294

关键词:

文章目录


一、docker介绍

1.什么是docker

Docker 是一个开源的容器引擎,它有助于更快地交付应用。Docker 可将应用程序和基础设施层隔离,
并且能将基础设施当作程序一样进行管理。使用 Docker , 可更快地打包、测试以及部署应用程序,并可
以缩短从编写到部署运行代码的周期。

2.为什么使用docker

更高效的利用系统资源
由于容器不需要进行硬件虚拟以及运行完整操作系统等额外开销,Docker对系统资源的利用率更高,无
论是应用执行速度,内存消耗以及文件存储速度,都要比传统虚拟机技术更高效。因此,相比虚拟机技
术,一个相同配置的主机,往往可以运行更多数量的应用。

更快速的启动时间
传统的虚拟机技术启动应用服务往往需要数分钟,而Docker容器应用,由于直接运行与宿主内核,无序
启动完整的操作系统,因此可以做到妙级,甚至毫秒级的启动时间,大大的节约了开发,测试,部署的
时间。

一致的运行环境
开发过程中一个常见的问题是环境一致性问题,由于开发环境,测试环境,生产环境不一致,导致有些
bug并未在开发过程中被发现,而Docker的镜像提供了除内核外完整的运行时环境,确保了应用运行环
境一致性。

持续交付和部署
对于开发和运维人员来说,最希望的就是一次创建或配置,可以在任意地方正常运行。
使用Docker可以通过定制应用镜像来实现持续集成,持续交付,部署。开发人员可以通过Dockerfile来
进行镜像构建,并结合持续集成系统进行集成测试,而运维人员则可以在生产环境中快速部署该镜像,
甚至结合持续部署系统进行自动部署。

更轻松的迁移
由于Docker确保了执行环境的一致性,使得应用的迁移更加容易,Docker可以在很多平台上运行,无论
是物理机,虚拟机,公有云,私有云,甚至是比较本,其运行结果是一致的,因此用户可以很轻易的将
在一个平台上运行的应用,迁移到另一个平台上,而不用担心运行环境的变化导致应用无法正常运行的
情况。

更轻松的维护和扩展
Docker使用的分层存数以及镜像的技术,使得应用重复部分的复用更为容易,也使得应用的维护更新更
加简单,基于基础镜像进一步扩展镜像也变得非常简单,此外,Docker团队同各个开源项目团队一起维
护了一大批高质量的官方镜像,既可以直接在生产环境使用,又可以作为基础进一步定制,大大的降低
了应用服务的镜像制作成本。


二、docker架构

Docker 架构包含的主要组件:

  • Docker daemon ( Docker 守护进程 )
    Docker daemon 是一个运行在宿主机 (DOCKER_HOST) 的后台进程。可通过 Docker 客户端与之通
    信。

  • Client (Docker 客户端)
    Docker 客户端是 Docker 的用户界面,它可以接受用户命令和配置标识,并与 Docker daemon 通信。

  • Images ( Docker 镜像 )
    Docker 镜像是一个只读模板,它包含创建 Docker 容器说明。它和系统安装光盘有点像 —— 使用系统
    安装光盘可以安装系统,同理,使用 Docker 镜像可以运行 Docker 镜像中的程序。

  • Container (容器)
    容器是镜像的可运行实例。镜像和容器的关系有点类似于面向对象中,类和对象的关系。可通过 Docker
    API 或 CLI 命令来启动、停止和移动、删除容器。

  • Registry ( 注册 )
    Docker Registry 是一个集中存储与分发镜像的服务。构建完 Docker 镜像后,就可在当前宿主机上运
    行。但如果想要在其他机器上运行这个镜像,就需要手动复制。此时,就可借助 Docker Registry 来避
    免镜像的手动复制。
    一个 Docker Registry 可包含多个 Docker 仓库,每个仓库可包含多个镜像标签,每个标签对应一个
    Docker 镜像。这跟 Maven 的仓库有点类似,如果把 Docker Registry 比作 Maven 仓库的话,那么
    Docker 仓库就可理解为某 jar 包的路径,而镜像标签则可理解为 jar 包的版本号。
    Docker Registry 可分为公有 Docker Registry 和私有 Docker Registry 。最常用的 Docker Registry 莫
    过于官方的 Docker Hub, 这也是默认的 Docker Registry 。Docker Hub 上存放着大量优秀的镜像,
    可使用 Docker 命令下载并使用。


三、docker安装

1.安装

移除非官方软件包

yum remove docker

卸载旧版本

yum remove docker \\
docker-common \\
docker-selinux \\
docker-engine

依赖安装

yum install -y yum-utils device-mapper-persistent-data lvm2

配置阿里源

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

docker安装

列出可用的 Docker 版本

 yum list docker-ce --showduplicates | sort -r
 yum install docker-ce   # 安装指定版本,例如yum install --setopt=obsolets=0 -y docker-ce-3:20.10.7-3.el8

启动并加入开机自启

systemctl start docker
systemctl enable docker

查看 Docker 版本

docker version

配置docker的镜像加速和cgroup驱动(k8s需要)

tee /etc/docker/daemon.json <<-EOF

  "registry-mirrors": ["https://82m9ar63.mirror.aliyuncs.com"],
  "exec-opts": ["native.cgroupdriver=systemd"],
  "log-driver": "json-file",
  "log-opts": 
    "max-size": "100m"
  ,
  "storage-driver": "overlay2"

EOF

重启docker

systemctl restart docker

2.卸载

卸载 Docker 软件包

yum remove docker-ce

如需删除镜像、容器、卷以及自定义的配置文件,可执行以下命令

rm -rf /var/lib/docker

结尾

  • 感谢大家的耐心阅读,如有建议请私信或评论留言。
  • 如有收获,劳烦支持,关注、点赞、评论、收藏均可,博主会经常更新,与大家共同进步

k8s集群安装部署实战详细手册(代码片段)

...要求3台以上机器,操作系统CentOS7.7以上64位系统具备docker环境(docke 查看详情

docker安装部署实战详细手册(代码片段)

文章目录一、docker介绍1.什么是docker2.为什么使用docker二、docker架构三、docker安装1.安装2.卸载结尾一、docker介绍1.什么是dockerDocker是一个开源的容器引擎,它有助于更快地交付应用。Docker可将应用程序和基础设施层隔离,... 查看详情

harbor安装部署实战详细手册(代码片段)

文章目录前言一、安装docker二、安装docker-compose1.下载2.赋权3.测试三、安装harbor1.下载2.解压3.修改配置文件4.部署5.配置开机自启动6.登录验证7.补充说明四、harbor使用问题1.dockerlogin问题:Errorresponsefromdaemon:Gethttps://:http:servergav... 查看详情

harbor安装部署实战详细手册(代码片段)

文章目录前言一、安装docker二、安装docker-compose1.下载2.赋权3.测试三、安装harbor1.下载2.解压3.修改配置文件4.部署5.配置开机自启动6.登录验证7.补充说明四、harbor使用问题1.dockerlogin问题:Errorresponsefromdaemon:Gethttps://:http:servergav... 查看详情

minio分布式集群安装部署实战详细手册(代码片段)

文章目录前言一、准备工作二、集群搭建(每台服务器操作都一样)1.创建目录2.编写启动脚本3.赋权、启动4.浏览器访问5.Nginx负载均衡配置三.注意事项结尾前言Minio是GlusterFS创始人之一AnandBabuPeriasamy发布新的开源项目。... 查看详情

minio分布式集群安装部署实战详细手册(代码片段)

文章目录前言一、准备工作二、集群搭建(每台服务器操作都一样)1.创建目录2.编写启动脚本3.赋权、启动4.浏览器访问三.注意事项结尾前言Minio是GlusterFS创始人之一AnandBabuPeriasamy发布新的开源项目。基于ApacheLicensev2.0开... 查看详情

minio分布式集群安装部署实战详细手册(代码片段)

文章目录前言一、准备工作二、集群搭建(每台服务器操作都一样)1.创建目录2.编写启动脚本3.赋权、启动4.浏览器访问三.注意事项结尾前言Minio是GlusterFS创始人之一AnandBabuPeriasamy发布新的开源项目。基于ApacheLicensev2.0开... 查看详情

k8sdashboard安装部署实战详细手册(代码片段)

文章目录一、k8sdashboard搭建1.选择版本2.下载yaml3.执行yaml4.访问dashboard5.token登录6.配置权限结尾一、k8sdashboard搭建1.选择版本dashboard和k8s存在版本对应关系,具体可以去github查找https://github.com/kubernetes/dashboard/releases由于我的k8s... 查看详情

k8sdashboard安装部署实战详细手册(代码片段)

文章目录一、k8sdashboard搭建1.选择版本2.下载yaml3.执行yaml4.访问dashboard5.token登录6.配置权限结尾一、k8sdashboard搭建1.选择版本dashboard和k8s存在版本对应关系,具体可以去github查找https://github.com/kubernetes/dashboard/releases由于我的k8s... 查看详情

云原生之docker实战使用docker部署反向代理nginxproxymanager(代码片段)

【云原生之Docker实战】使用Docker部署反向代理NginxProxyManager一、NginxProxyManager介绍1.NginxProxyManager介绍2.NginxProxyManager特点二、检查docker状态三、安装docker-compose1.安装docker-compose2.给docker-compose文件添加执行权限3.查看docker-compose版 查看详情

zabbixjava开发教程docker部署zabbix及api获取实战教程(代码片段)

文章目录Docker安装移除旧版本的docker环境安装必要系统工具添加源信息更新yum缓存安装Docker-ce启动Docker测试运行hello-world修改源Docker部署zabbix创建zabbix的MySQL运行zabbix-java-gateway运行zabbix的web端运行zabbix客户端获取api获取api远程地... 查看详情

centos7案例实战——docker仓库harbor服务安装部署(代码片段)

...言Harbor(港口,港湾)是一个用于存储和分发Docker镜像的企业级Registry服务器。我们可以使用dockerhub仓库或者阿里云docker仓库等第三方仓库管理我们的docker镜像。对于企业来说,条件允许,可以搭建自己的docker... 查看详情

docker最新超详细教程——安装与部署(代码片段)

Docker最新超详细教程——安装与部署安装DockerCentOS安装Docker1.卸载(可选)2. 安装yum工具3. 更新本地镜像源4.安装docker 5.注意事项关闭防火墙(重要!!!)Docker的使用1.通过命令启动docker2.输入命令&#... 查看详情

docker部署centos7安装docker详细步骤(无坑版教程)(代码片段)

...前必读3.卸载旧版本(如果之前安装过的话)安装Docker的详细步骤一、安装前必读在安装Docker之前,先说一下配置,我这里是Centos7Linux内核:官方建议3.10以上,3.8以上貌似也可。注意:本文的命令使用... 查看详情

实战docker+jenkins+git构建持续集成环境(代码片段)

本文重点介绍jenkins以及让jenkins如何实现在docker容器中运行。jenkins和docker私有仓库又是怎么结合的。docker说明及安装和git说明及安装在本文中不会特别详细的介绍。?并且,在本文中不着重介绍原理性的东西,比如不会介绍什么... 查看详情

企业运维实战--最全docker学习笔记1.docker简介安装部署镜像构建dockerfile详解镜像构建镜像优化本地私有仓库搭建(代码片段)

企业运维实战--Docker学习笔记1.Docker简介、安装部署、镜像构建、Dockerfile详解、镜像构建、镜像优化、本地私有仓库搭建前言--Docker简介一、Docker安装部署二、镜像的构建三、Dockerfile详解四、镜像构建--nginx五、镜像优化六、本地... 查看详情

云原生之docker实战使用docker部署filemanager文件管理系统(代码片段)

【云原生之Docker实战】使用Docker部署FileManager文件管理系统一、FileManager简介1.FileManager简介2.FileManager特点二、检查宿主机系统版本三、检查本地docker环境1.检查docker服务状态2.检查docker配置信息3.开启IPv4forwarding4.检查Docker版本四... 查看详情

云原生之docker实战使用docker部署solo个人博客站点(代码片段)

【云原生之Docker实战】使用Docker部署Solo个人博客站点一、卷首语二、Solo介绍1.Solo简介2.Solo功能三、检查本地docker环境1.检查docker服务状态2.检查docker配置信息3.开启IPv4forwarding四、安装docker-compose1.下载docker-compose二进制包2.给文件... 查看详情