zoukankan      html  css  js  c++  java
  • 一、安装Docker CE

    卸载旧版本

    较旧版本的Docker被称为dockerdocker-engine。如果已安装这些,需要卸载以及相关的依赖项。

    $ sudo yum remove docker 
                      docker-client 
                      docker-client-latest 
                      docker-common 
                      docker-latest 
                      docker-latest-logrotate 
                      docker-logrotate 
                      docker-selinux 
                      docker-engine-selinux 
                      docker-engine
    

    安装Docker CE

    您可以根据需要以不同方式安装Docker CE:

    • 大多数用户设置Docker的仓库并从中进行安装,以便于安装和升级任务。这是推荐的方法。
    • 有些用户下载RPM软件包并手动安装并完全手动管理升级。这在没有访问互联网的系统上安装Docker的情况下非常有用。
    • 在测试和开发环境中,一些用户选择使用自动便捷脚本来安装Docker。

    使用仓库安装

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

    设置存储库

    1. 安装所需的包。

      yum-utils提供yum-config-manager实用程序,devicemapper存储驱动程序需要device-mapper-persistent-datalvm2

      $ sudo yum install -y yum-utils 
        device-mapper-persistent-data 
        lvm2
      
    2. 设置稳定存储库。

      使用以下命令设置稳定存储库

      $ sudo yum-config-manager 
          --add-repo 
          https://download.docker.com/linux/centos/docker-ce.repo
      

      可选:启用edgetest存储库。这些存储库包含在上面的docker.repo文件中,但默认情况下处于禁用状态。您可以将它们与稳定存储库一起启用。

      $ sudo yum-config-manager --enable docker-ce-edge
      
      $ sudo yum-config-manager --enable docker-ce-test
      

      通过使用--disable标志运行yum-config-manager命令来禁用edgetest仓库。要重新启用,使用--enable标志。以下命令禁用edge仓库。

      $ sudo yum-config-manager --disable docker-ce-edge
      

      注意:从Docker 17.06开始,稳定版本也会被推送到边缘并测试存储库。

    安装DOCKER CE

    1. 安装最新版本

      安装最新版本Docker CE,或转到下一步安装特定版本:

      $ sudo yum install docker-ce
      

      如果提示接受GPG密钥,请确认指纹符合060A 61C5 1B55 8A7F 742B 77AA C52F EB6B 621E 9F35,如果符合,则接受该指纹。

      运行以上命令安装后,Docker已安装但尚未启动。并已创建docker组,但未向该组添加任何用户。

    2. 安装特定版本

      • 要安装特定版本Docker CE,可列出repo中的可用版本,然后选择并安装

        $ yum list docker-ce --showduplicates | sort -r
        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
        docker-ce.x86_64  18.03.1.ce-1.el7.centos  docker-ce-stable
        docker-ce.x86_64  18.03.0.ce-1.el7.centos  docker-ce-stable
        

        返回的列表取决于启用的仓库,并且特定于您的CentOS版本(在此示例中以.el7后缀表示CentOS7)。

      • 通过其完全限定的包名称安装特定版本

        包名称(docker-ce)加上版本字符串(第2列),中间用连字符( - )分隔,

        例如,docker-ce-18.06.1.ce

        $ sudo yum install docker-ce-18.06.1.ce
        

        运行以上命令安装后,Docker已安装但尚未启动。并已创建docker组,但未向该组添加任何用户。

    启动测试Docker

    1. 启动Docker

      $ sudo systemctl start docker
      
    2. 通过运行hello-world映像验证是否正确安装了docker。

      $ sudo docker run hello-world
      

      此命令下载hello-world镜像并在容器中运行它。当容器运行时,它会打印消息并退出。

      如果网络下载失败,可能需要配置国内加速器,或者需要使用代理连接,可以通过下面的Linux安装后配置进行配置

    升级DOCKER CE

    要升级Docker CE,选择特定版本安装新版本或选择安装最新版本。

    使用包安装

    如果您无法使用Docker存储库来安装Docker,可以下载适用于您的发行版的.rpm文件并手动安装。每次要升级Docker时都需要下载新文件。

    安装Docker CE

    • CentOS

      1. 转到https://download.docker.com/linux/centos/7/x86_64/stable/Packages/并下载要安装的Docker版本的.rpm文件。

        注意:要安装edgetest包,请将上述URL中的单词stable更改为edgetest

      2. 安装Docker CE,将下面的路径更改为Docker软件包的路径。

        Docker的``docker.rpm`包在用户主目录下

        $ sudo yum install ~/docker.rpm
        

        Docker已安装但尚未启动。已创建docker组,但未向该组添加任何用户。

    升级DOCKER CE

    要升级Docker CE,请下载较新的软件包文件并重复安装过程,使用yum -y upgrade,而不是yum -y install,并指向新软件包。

    卸载 Docker CE

    卸载Docker包:

    $ sudo yum remove docker-ce
    

    主机上的图像,容器,卷或自定义配置文件不会自动删除。

    要删除所有图像,容器和卷:

    $ sudo rm -rf /var/lib/docker
    

    二、Docker安装后配置

    HTTP/HTTPS代理

    如果您使用HTTPHTTPS代理服务器,例如在公司设置中,您需要在Docker systemd service文件中添加此配置。

    1. 为Docker服务创建一个 systemd多级目录:

      $ sudo mkdir -p /etc/systemd/system/docker.service.d
      
    2. 创建一个名为/etc/systemd/system/docker.service.d/http-proxy.conf的文件。添加HTTP_PROXY环境变量:

      [Service]
      Environment="HTTP_PROXY=http://username:password@0.0.0.1:80/"
      

      或者,如果您在HTTPS代理服务器后面,创建一个名为/etc/systemd/system/docker.service.d/https-proxy.conf的文件,添加HTTPS_PROXY环境变量:

      [Service]
      Environment="HTTPS_PROXY=https://username:password@0.0.0.1:80/"
      
    3. 如果您有自己的私有Docker仓库,而无需代理,您可以通过NO_PROXY环境变量指定它们:

      [Service]    
      Environment="HTTP_PROXY=http://username:password@0.0.0.1:80/" "NO_PROXY=localhost,127.0.0.1,docker-registry.somecorporation.com"
      

      或者, 如果您在 HTTPS 代理服务器后面添加:

      [Service]    
      Environment="HTTPS_PROXY=https://username:password@0.0.0.1:80/" "NO_PROXY=localhost,127.0.0.1,docker-registry.somecorporation.com"
      
    4. 刷新更改:

      $ sudo systemctl daemon-reload
      
    5. 重启Docker:

      $ sudo systemctl restart docker
      
    6. 验证配置已经加载:

      $ systemctl show --property=Environment docker
      Environment=HTTP_PROXY=http://username:password@0.0.0.1:80/
      

      或者:

      $ systemctl show --property=Environment docker
      Environment=HTTPS_PROXY=https://username:password@0.0.0.1:80/
      

    以非root身份管理Docker

    Docker daemon绑定到Unix socket而不是TCP端口。默认情况下,Unix socket由用户root拥有,而其他用户只能使用sudo访问它。 Docker daemon始终以root用户身份运行。

    如果您不想在docker命令前加上sudo,可以创建一个名为dockerUnix组并向其添加用户。当Docke启动时,它会创建一个可由docker组成员访问的Unix socket

    警告

    docker组授予与root用户等效的权限。
    有关这将如何影响系统安全性的详细信息,请参阅Docker Daemon Attack Surface

    要创建docker组并添加您的用户:

    1. 创建docker组

      $ sudo groupadd docker
      
    2. 将您的用户添加到docker组

      $ sudo usermod -aG docker $USER
      
    3. 注销并重新登录,以便您的组成员身份生效。

    4. 验证您是否可以在没有sudo的情况下运行docker命令.

      $ docker run hello-world
      

      如果容器运行,它会打印消息并退出,说明设置生效

      如果在将用户添加到docker组之前最初使用sudo运行Docker CLI命令,则可能会看到以下错误,这表示由于sudo命令而创建的〜/.docker/目录的权限不正确。

      WARNING: Error loading config file: /home/user/.docker/config.json -
      stat /home/user/.docker/config.json: permission denied
      

      要解决此问题,请删除〜/.docker/目录(它会自动重新创建,但任何自定义设置都将丢失),或使用以下命令更改其所有权和权限:

      $ sudo chown "$USER":"$USER" /home/"$USER"/.docker -R
      $ sudo chmod g+rwx "$HOME/.docker" -R
      

    镜像加速

    由于Docker Hub的服务器在国外,镜像的下载速度比较慢,可以使用国内提供的免费镜像服务,国内免费镜像服务有阿里云和DaoCloud等有提供:

    • 阿里云

      1. 注册登录后,进入控制台,在产品与服务中搜索容器镜像服务进入,在镜像加速器有阿里云提供给个人的加速器地址
      2. 按照操作文档选择对应的服务器类型操作,
    • DaoCloud

      1. 注册登录后,点击加速器图标

      2. 进入页面后,复制内容到Shell终端运行

    随系统启动而启动

    • systemd

      开启随系统启动

      $ sudo systemctl enable docker
      

      关闭随系统启动,改用disable。

      $ sudo systemctl disable docker
      

      查看状态

      $ sudo systemctl is-enabled docker
      
  • 相关阅读:
    171. Excel Sheet Column Number (Easy)
    349. Intersection of Two Arrays (Easy)
    453. Minimum Moves to Equal Array Elements (Easy)
    657. Judge Route Circle (Easy)
    CSS笔记
    保存页面状态
    UI开发总结
    ubuntu 下配置munin
    反向代理配置
    JavaScript 高级程序设计第二版
  • 原文地址:https://www.cnblogs.com/zenghi-home/p/10070980.html
Copyright © 2011-2022 走看看