介绍

Docker

 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。

Docker-Conpose

 Compose 是一个用户定义和运行多个容器的 Docker 应用程序。在 Compose 中你可以使用 YAML 文件来配置你的应用服务。然后,只需要一个简单的命令,就可以创建并启动你配置的所有服务。

安装 Docker CE

我将在 CentOS 7 系统上进行安装 Docker CE 和 Docker-Compose。

系统要求

 Docker CE 支持 64 位版本 CentOS 7,并且要求内核版本不低于 3.10。 CentOS 7 满足最低内核的要求,但由于内核版本比较低,部分功能(如 overlay2 存储层驱动)无法使用,并且部分功能可能不太稳定。

 

 Docker 提供了两个版本:社区版 (CE) 和企业版 (EE)。

 

 Docker 社区版 (CE) 是开发人员和小型团队开始使用 Docker 并尝试使用基于容器的应用的理想之选。Docker CE 有两个更新渠道,即 stableedge

  • Stable 每个季度为您提供可靠更新
  • Edge 每个月为您提供新功能

以下Docker的社区版和企业版的区别:

 

 

 

警告:切勿在没有配置 Docker YUM 源的情况下直接使用 yum 命令安装 Docker.

使用 YUM 安装

本文是用 Docker CE Stable 版本进行安装的。

  1. 先从 YUM 安装 Yum-utils。Yum-utils 是管理repository及扩展包的工具。

    $ sudo yum install -y yum-utils device-mapper-persistent-data lvm2
    ......
    Complete!
  2. 鉴于国内网络问题,强烈建议使用国内源。设置 YUM 软件源

    $ sudo yum-config-manager --add-repo https://mirrors.ustc.edu.cn/docker-ce/linux/centos/docker-ce.repo
  3. 安装 Docker CE

    $ sudo yum install docker-ce
  4. 通过 docker 命令检查 Docker 是否安装成功。

    $ docker -v
    Docker version 18.09.4, build d14af54266
  5. 启动 Docker

    $ sudo systemctl start docker
  6. 设置 Docker 系统重启自启动

    $ sudo systemctl enable docker
  7. 默认情况下,docker 命令会使用 Unix socket 与 Docker 引擎通讯。而只有 root 用户和 docker 组的用户才可以访问 Docker 引擎的 Unix socket。出于安全考虑,一般 Linux 系统上不会直接使用 root 用户。因此,更好地做法是将需要使用 docker 的用户加入 docker 用户组。

    建立一个名叫做 docker 用户组。

    $ sudo groupadd docker
  8. 将当前用户加入 docker 组:

    $ sudo usermod -aG docker $USER
  9. 退出当前终端并重新登录,测试 Docker 是否安装正确。

    $ docker run hello-world
    
    Unable to find image 'hello-world:latest' locally
    latest: Pulling from library/hello-world
    1b930d010525: Pull complete
    Digest: sha256:2557e3c07ed1e38f26e389462d03ed943586f744621577a99efb77324b0fe535
    Status: Downloaded newer image for hello-world:latest Hello from Docker!
    This message shows that your installation appears to be working correctly. To generate this message, Docker took the following steps:
    1. The Docker client contacted the Docker daemon.
    2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
    (amd64)
    3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
    4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal. To try something more ambitious, you can run an Ubuntu container with:
    $ docker run -it ubuntu bash Share images, automate workflows, and more with a free Docker ID:
    https://hub.docker.com/ For more examples and ideas, visit:
    https://docs.docker.com/get-started/

若能正常输出以上信息,则说明安装成功。

配置 Docker 加速器

镜像加速器

国内从 Docker Hub 拉取镜像有时会遇到困难,此时可以配置镜像加速器。Docker 官方和国内很多云服务商都提供了国内加速器服务,例如:

国内各大云服务商均提供了 Docker 镜像加速服务,建议根据运行 Docker 的云平台选择对应的镜像加速服务。

我们以 Docker 官方加速器 https://registry.docker-cn.com 为例进行介绍。

配置加速器

对于使用 systemd 的系统,请在 /etc/docker/daemon.json 中写入如下内容(如果文件不存在请新建该文件)

{
"registry-mirrors": [
"https://registry.docker-cn.com"
]
}

上面是【Docker入门到实践】 的教程,我这边使用 七牛云加速器 进行配置。

# 创建配置的文件夹
$ sudo mkdir -p /etc/docker
# 创建 daemon.json 文件并且配置加速地址
$ sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://reg-mirror.qiniu.com/"]
}
EOF
# 加载加速器地址和重启 Docker
sudo systemctl daemon-reload
sudo systemctl restart docker

安装 Docker-Compose

在 Linux 上的也安装十分简单,从 官方 GitHub Release 处直接下载编译好的二进制文件即可。

例如,在 Linux 64 位系统上直接下载对应的二进制包。

$ sudo curl -L https://github.com/docker/compose/releases/download/1.17.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose

使用 Docker-Compose 检查是否安装成功

$ docker-compose -v
docker-compose version 1.17.1, build 6d101fb

Docker-Compose 已经安装成功,得给 /usr/local/bin/docker-compose 文件夹分配权限。

$ sudo chmod +x /usr/local/bin/docker-compose

这篇文章只是记录在下安装 Docker 和 Docker-Compose 笔记,没有更高层次讲解怎么使用 Docker 和 Docker-Compose 请大家见谅。后面陆陆续续有 Docker 的实战文章呈上。

中文文档:https://docs.docker-cn.com/engine/installation/

Docker入门到实践:https://docker_practice.gitee.io/compose/install.html

强烈推荐新手入门学习看【Docker入门到实践】



>原文:https://www.cnblogs.com/lfzm/p/10617881.html

Docker - CentOS 安装 Docker 和 Docker-Compose的更多相关文章

  1. Docker Centos安装Redis以及问题处理

    之前一篇文章 Redis安装及主从配置 介绍了redis的安装配置,另一篇文件介绍了 Docker Centos安装Openssh .今天将两篇文件结合一下——在Docker Centos环境下搭建r ...

  2. Docker Centos安装Mysql5.6

    之前一篇随笔<Docker Centos安装Openssh> 写的是如何在基础的centos镜像中搭建ssh服务,在此基础上再搭建其他服务.本文继续介绍在centos_ssh基础上搭建my ...

  3. Docker - CentOS安装Docker

    如果要在CentOS下安装Docker容器,必须是CentOS 7 (64-bit).CentOS 6.5 (64-bit) 或更高的版本,并要求 CentOS 系统内核高于 3.10. uname ...

  4. Docker的安装以及使用Docker安装jenkins,gogs,tomcat(一)

    (1)Docker的安装  官网安装链接 :https://yeasy.gitbooks.io/docker_practice/content/ 卸载旧版本 旧版本的 Docker 称为 docker ...

  5. Docker的安装和使用说明——Docker for Windows

    一.Docker安装 1.1官方方法 官方下载页面:http://www.docker.com/products/docker#/windows 官方下载地址:https://download.doc ...

  6. 微服务分布式电商项目学习笔记(三)---- docker介绍安装以及使用docker安装软件(2020/7/10)

    其实在介绍docker的使用和安装之前应该还要介绍虚拟机的安装与配置,以及虚拟网络的配置,但是我使用的是vmware,而视频课使用的是vagrant,这一块我简看的,因此没有过多的介绍,至于vmwar ...

  7. Docker Centos安装Openssh

    环境介绍: Docker版本:1.5.0 镜像:docker.io:centos latest 操作步骤: 1.启动镜像 docker run -ti centos /bin/bash 2.安装pas ...

  8. linux centos 安装Jenkins(非docker方式)

    写在前面 我之前写过Asp.net Core 使用Jenkins + Dockor 实现持续集成.自动化部署(一):Jenkins安装这jenkisn的安装过程,但这篇使用的是docker的方式安装的 ...

  9. 1、docker centos 安装

    Docker for CentOS: 第一步:使用官方yum仓库 [root@linux-node1 ~]# yum install -y yum-utils [root@linux-node1 ~] ...

随机推荐

  1. Document.location.href和.replace的区别

    转自:https://www.cnblogs.com/GT_Andy/archive/2007/10/31/1922138.html 1 Document.location.href和.replace ...

  2. Python三元运算和lambda表达式

    一.三元运算 1.定义:三元运算是if-else 语句的快捷操作,也被称为条件运算. 2.结构: [on_true]  if  [expression]  else  [on_false] 3.示例: ...

  3. init方法返回值自动改写问题

    [init方法返回值自动改写问题] 在ARC开启的情况下,以init开头的实例方法的返回值会被默认无视,返回类型会被编译器改写为类指针类型. 如一人类叫UIButton类,如果一个方法叫 (UILab ...

  4. 读excle

    1.OleDbConnection读取Excel ///<summary>///上传文件到临时目录中 ///</ummary>private void Upload(){ Ht ...

  5. 在页面完成读取EXCEL

    protected void btnUpload_Click(object sender, EventArgs e) { if (Page.IsValid) { string sFILENAME = ...

  6. angular.js简单入门。

    小弟刚接触angular js  就写了一个简单的入门.后续慢慢补... 首先看 html 页面. <html> <meta charset="UTF-8"> ...

  7. Hyperledger Fabric Ordering Service过程

    排序服务在超级账本 Fabric 网络中起到十分核心的作用.所有交易在发送给 Committer 进行验证接受之前,需要先经过排序服务进行全局排序. 在目前架构中,排序服务的功能被抽取出来,作为单独的 ...

  8. 模板模式和Comparable类

    模板模式中,父类规定好了一些算法的流程,并且空出一些步骤(方法)留给子类填充 Java的数组类中静态方法sort()就是一个模板,它空出了一个compareTo的方法,留给子类填充,用来规定什么是大于 ...

  9. zynq qemu学习

    1,ubuntu给软件包降级,先安装aptitude sudo apt-get  install aptitude 2,强制降级,等号“=”前后不能有空格 sudo aptitude install ...

  10. 29.MAX() 函数

    MAX() 函数 MAX 函数返回一列中的最大值.NULL 值不包括在计算中. SQL MAX() 语法 SELECT MAX(column_name) FROM table_name 注释:MIN ...