首页 > 系统相关 >CentOS Docker 安装

CentOS Docker 安装

时间:2022-12-30 15:38:17浏览次数:36  
标签:容器 CentOS root ce 镜像 Docker 安装 docker

Docker 简介

Docker 是一个开源的应用容器引擎,基于Go语言并遵从Apache2.0协议开源。

Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化。

容器是完全使用沙箱机制,相互之间不会有任何接口(类似iPhone的app),更重要的是容器性能开销极低。

Docker 从17.03版本之后分为CE(Community Edition: 社区版)和 EE(Enterprise Edition: 企业版),我们用社区版就可以了。

Docker的应用场景

  • Web 应用的自动化打包和发布。
  • 自动化测试和持续集成、发布。
  • 在服务型环境中部署和调整数据库或其他的后台应用。

从头编译或者扩展现有的OpenShift或Cloud Foundry平台来搭建自己的PaaS 环境。

Docker 的优点

Docker 是一个用于开发,交付和运行应用程序的开放平台。Docker使您能够将应用程序与基础架构分开,从而可以快速交付软件。借助Docker您可以与管理应用程序相同的方式来管理基础架构。通过利用Docker的方法来快速交付,测试和部署代码,您可以大大减少编写代码和在生产环境中运行代码之间的延迟。

1、快速,一致地交付您的应用程序

Docker 允许开发人员使用您提供的应用程序或服务的本地容器在标准化环境中工作,从而简化了开发的生命周期。

容器非常适合持续集成和持续交付(CI / CD)工作流程,请考虑以下示例方案:

  • 您的开发人员在本地编写代码,并使用 Docker 容器与同事共享他们的工作。
  • 他们使用 Docker 将其应用程序推送到测试环境中,并执行自动或手动测试。
  • 当开发人员发现错误时,他们可以在开发环境中对其进行修复,然后将其重新部署到测试环境中,以进行测试和验证。
  • 测试完成后,将修补程序推送给生产环境,就像将更新的镜像推送到生产环境一样简单。

2、响应式部署和扩展

Docker 是基于容器的平台,允许高度可移植的工作负载。Docker 容器可以在开发人员的本机上,数据中心的物理或虚拟机上,云服务上或混合环境中运行。

Docker 的可移植性和轻量级的特性,还可以使您轻松地完成动态管理的工作负担,并根据业务需求指示,实时扩展或拆除应用程序和服务。

3、在同一硬件上运行更多工作负载

Docker 轻巧快速。它为基于虚拟机管理程序的虚拟机提供了可行、经济、高效的替代方案,因此您可以利用更多的计算能力来实现业务目标。Docker 非常适合于高密度环境以及中小型部署,而您可以用更少的资源做更多的事情。

相关链接

Docker 官网:https://www.docker.com

Github Docker 源码:https://github.com/docker/docker-ce

Docker 架构

Docker 包括三个基本概念:

  • 镜像(Image):Docker 镜像(Image),就相当于是一个 root 文件系统。比如官方镜像 ubuntu:16.04 就包含了完整的一套 Ubuntu16.04 最小系统的 root 文件系统。
  • 容器(Container):镜像(Image)和容器(Container)的关系,就像是面向对象程序设计中的类和实例一样,镜像是静态的定义,容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停等。
  • 仓库(Repository):仓库可看成一个代码控制中心,用来保存镜像。

Docker 使用客户端-服务器 (C/S) 架构模式,使用远程API来管理和创建Docker容器。

Docker 容器通过 Docker 镜像来创建。

容器与镜像的关系类似于面向对象编程中的对象与类。

Docker

面向对象

容器

对象

镜像

CentOS Docker 安装_应用程序

概念

说明

Docker 镜像(Images)

Docker 镜像是用于创建 Docker 容器的模板,比如 Ubuntu 系统。

Docker 容器(Container)

容器是独立运行的一个或一组应用,是镜像运行时的实体。

Docker 客户端(Client)

Docker 客户端通过命令行或者其他工具使用 Docker SDK (https://docs.docker.com/develop/sdk/) 与 Docker 的守护进程通信。

Docker 主机(Host)

一个物理或者虚拟的机器用于执行 Docker 守护进程和容器。

Docker Registry

Docker 仓库用来保存镜像,可以理解为代码控制中的代码仓库。Docker Hub(https://hub.docker.com) 提供了庞大的镜像集合供使用。一个 Docker Registry 中可以包含多个仓库(Repository);每个仓库可以包含多个标签(Tag);每个标签对应一个镜像。


通常,一个仓库会包含同一个软件不同版本的镜像,而标签就常用于对应该软件的各个版本。我们可以通过 <仓库名>:<标签> 的格式来指定具体是这个软件哪个版本的镜像。如果不给出标签,将以 latest 作为默认标签。

Docker Machine

Docker Machine是一个简化Docker安装的命令行工具,通过一个简单的命令行即可在相应的平台上安装Docker,比如VirtualBox、 Digital Ocean、Microsoft Azure。

CentOS Docker 安装

Docker 支持以下的 64 位 CentOS 版本:

  • CentOS 7
  • CentOS 8
  • 更高版本...

使用官方安装脚本自动安装

安装命令如下:

[root@localhost ~]# curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

也可以使用国内daocloud一键安装命令:

[root@localhost ~]# curl -sSL https://get.daocloud.io/docker | sh

Yum安装

# 自带版本1.13.1

[root@localhost ~]# yum -y install docker

手动安装

卸载旧版本

较旧的 Docker 版本称为 docker 或 docker-engine 。如果已安装这些程序,请卸载它们以及相关的依赖项。

[root@localhost ~]# yum -y remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine

安装 Docker Engine-Community

使用 Docker仓库进行安装

在新主机上首次安装 Docker Engine-Community 之前,需要设置 Docker 仓库。之后,您可以从仓库安装和更新 Docker。

设置仓库

安装所需的软件包。yum-utils 提供了 yum-config-manager ,并且 device mapper 存储驱动程序需要 device-mapper-persistent-data 和 lvm2。

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

使用以下命令来设置稳定的仓库。

使用官方源地址(比较慢)

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

可以选择国内的一些源地址:

阿里云

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

清华大学源

[root@localhost ~]# yum-config-manager --add-repo https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo

安装 Docker Engine-Community

安装最新版本的Docker Engine-Community和containerd,或者转到下一步安装特定版本:

[root@localhost ~]# yum install docker-ce docker-ce-cli containerd.io

如果提示您接受 GPG 密钥,请选是。

有多个Docker仓库吗?

如果启用了多个 Docker 仓库,则在未在yum install或yum update命令中指定版本的情况下,进行的安装或更新将始终安装最高版本,这可能不适合您的稳定性需求。

Docker 安装完默认未启动。并且已经创建好 docker 用户组,但该用户组下没有用户。

要安装特定版本的 Docker Engine-Community,请在存储库中列出可用版本,然后选择并安装:

1、列出并排序您存储库中可用的版本。此示例按版本号(从高到低)对结果进行排序。

[root@localhost ~]# yum list docker-ce --showduplicates | sort -r

docker-ce.x86_64  3:18.09.1-3.el7             docker-ce-stable
docker-ce.x86_64  3:18.09.0-3.el7             docker-ce-stable
docker-ce.x86_64  18.06.1.ce-3.el7            docker-ce-stable
docker-ce.x86_64  18.06.0.ce-3.el7            docker-ce-stable

2、通过其完整的软件包名称安装特定版本,该软件包名称是软件包名称(docker-ce)加上版本字符串(第二列),从第一个冒号(:)一直到第一个连字符,并用连字符(-)分隔。例如:docker-ce-18.09.1。

[root@localhost ~]# yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io

3、启动 Docker

[root@localhost ~]# systemctl start docker

通过运行 hello-world 映像来验证是否正确安装了 Docker Engine-Community 。

[root@localhost ~]# docker run hello-world

  • 输入编号:7180,直达文章
  • 输入m|M,直达目录列表

标签:容器,CentOS,root,ce,镜像,Docker,安装,docker
From: https://blog.51cto.com/u_12018693/5980270

相关文章

  • Docker 容器连接
    Docker容器连接前面我们实现了通过网络端口来访问运行在docker容器内的服务。容器中可以运行一些网络应用,要让外部也可以访问这些应用,可以通过-P或-p参数来指定端口映射。......
  • Docker Hello World
    DockerHelloWorldDocker允许你在容器内运行应用程序,使用dockerrun命令来在容器内运行一个应用程序。输出Helloworld#先下载一个Centos镜像[root@localhost~]#docker......
  • Docker 镜像使用
    Docker镜像使用当运行容器时,使用的镜像如果在本地中不存在,docker就会自动从docker镜像仓库中下载,默认是从DockerHub公共镜像源下载。下面我们来学习:1、管理和使用本地Doc......
  • Docker Dockerfile
    DockerDockerfile什么是Dockerfile?Dockerfile是一个用来构建镜像的文本文件,文本内容包含了一条条构建镜像所需的指令和说明。使用Dockerfile定制镜像这里仅讲解如何运行......
  • Docker Compose
    DockerComposeCompose简介Compose是用于定义和运行多容器Docker应用程序的工具。通过Compose,您可以使用YML文件来配置应用程序需要的所有服务。然后,使用一个命令,就可以从......
  • gazebo11 ros 集成环境安装
    1、gazebo11安装首先要搞清楚状态,环境要求很重要,gazebo11不是目前写gazebo最新版本,所以想安装gazebo11的,不要使用ubuntu22.04或更新的操作系统版本,我在这上面花了太多时间......
  • 什么是Rabbitmq消息队列? (安装Rabbitmq,通过Rabbitmq实现RPC全面了解,从入门到精通)
    目录Rabbitmq一:消息队列介绍1.介绍2.MQ解决了什么问题1.应用的解耦2.流量削峰3.消息分发(发布订阅:观察者模式)4.异步消息(celery就是对消息队列的封装)3.常见消息队列......
  • Docker 安装 Ubuntu
    Docker安装UbuntuUbuntu是基于Debian的Linux操作系统。Ubuntu是一个以桌面应用为主的Linux操作系统,其名称来自非洲南部祖鲁语或豪萨语的“ubuntu"一词,意思是“人性”“我......
  • Docker Machine
    DockerMachine简介DockerMachine是一种可以让您在虚拟主机上安装Docker的工具,并可以使用docker-machine命令来管理主机。DockerMachine也可以集中管理所有的docker主......
  • 使用Docker Registry快速搭建私有镜像仓库
    1、Docker是什么?Docker是Docker.Lnc公司开源的一个基于LXC技术之上搭建的Container容器引擎,源代码托管在Github上,基于Go语言并遵从Apache2.0协议开源。Docker属于Linux容器......