zoukankan      html  css  js  c++  java
  • centos7 部署 docker、shipyard

    ===============================================

     2019/4/9_第3次修改                       ccb_warlock

     

    更新说明:

    2019/4/9:增加了对docker部署、portainer部署的引用

    2019/4/2:【已弃用】

                       shipyard早已停更,该记录文档已无法成功部署;

                       早期对docker-ce部署的内容逻辑有些繁琐;

    ===============================================

    2019/4/9,我重新对docker ce的部署进行了整理,shipyard也可以用portainer来代替(我也是根据shipyard原作者在github上的建议才接触了portainer,功能确实更好)

    centos7 部署 docker ce:https://www.cnblogs.com/straycats/p/10680502.html

    docker 部署 portainer(http):https://www.cnblogs.com/straycats/p/8978201.html

     

     

     


    为了适应当前容器化的部署方式,故最近也在对docker进行学习。目前的理解是docker服务就像一艘货船,而你的各项服务可以封装在一个个集装箱里,而且在docker里服务的启动非常快,故有必要从基础的部署内容开始整理。

    这次整理的是docker、shipyard的部署。docker是容器的基础服务,而shipyard是查看容器的界面服务(也是运行在docker上的容器服务)。

     


     一、准备工作

     1.1 环境配置

    名称 内容
    操作系统 centos7(CentOS-7-x86_64-Minimal-1708)
    CPU 1核
    内存 4G

     

     

     

     

     

    1.2 卸载旧版本

    (新安装的centos7.4并没有这些包,所以执行也是提示找不到这些包)

    老版本的Docker被称为docker或docker-engine。如果安装了这些,请卸载它们以及相关的依赖项。

    yum remove -y docker docker-common docker-selinux docker-engine

     1.3 安装vim、wget

    yum install -y wget vim

      


     二、部署docker ce

     2.1 安装yum-utils、device-mapper-persistent-data、lvm2

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

     2.2 添加yum源配置

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

     2.3 (可选)启用边缘和测试存储库

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

    # 启动边缘存储库
    yum-config-manager --enable docker-ce-edge
    # 禁用边缘存储库
    yum-config-manager --disable docker-ce-edge
    # 启动测试存储库
    yum-config-manager --enable docker-ce-test
    # 禁用测试存储库
    yum-config-manager --disable docker-ce-test

     2.4 安装docker

     # 安装最新的docker

    yum install docker-ce -y

    (在试验的时候我们通常是安装最新版本,可以用上面的命令直接安装,但是在部署到生产环境时经常要求安装制定版本的docker。)

     # 列出可用的docker版本

    yum list docker-ce --showduplicates |sort -r

     其中有3列信息,第1列:软件包名称
                          第2列:版本字符串
                          第3列:仓库名称

     # 安装指定版本的docker 

    yum install -y docker-ce-<版本号>

     例如:

    yum install -y docker-ce-17.3.1

     

    2.5 启动docker

     # 启动

    systemctl start docker

     # 开机启动 

    systemctl enable docker

     

    2.6 开放2375端口

    firewall-cmd --zone=public --permanent --add-port=2375/tcp
    firewall-cmd --reload

    2.7 试验安装是否成功

    docker run hello-world

     

    2.8 查看docker版本 

    docker version

     

    2.9 设置镜像加速器

     墙的缘故,访问docker hub不够稳定,故需要设置镜像加速器来解决这个问题。
     这里使用的是阿里云的镜像加速器。
     登录阿里云后,访问https://cr.console.aliyun.com/#/accelerator

    (registry-mirrors的值必须带https:// (阿里云的教程中只有域名),否则会出现docker重启报错的情况。)

     

      


     三、部署shipyard

     3.1 下载镜像 

    docker pull dockerclub/shipyard

     

     3.2 修改安装脚本安装中文镜像

     # 下载官方一键部署脚本 

    wget https://shipyard-project.com/deploy

     # 替换Controller为中文版 

    sed -i 's/shipyard/shipyard:latest/dockerclub/shipyard:latest/g' deploy

     

     3.3  修改端口(可选)

     # 删除(可能你已经安装好了,想换个端口,先要删除,修改配置文件后再安装) 

    cat deploy | ACTION=remove bash

     shipyard默认端口8080,如果8080有其他用途,则需要修改端口。假设需要加端口改为6000端口。
     # 修改文件deploy 

    vim /root/deploy

    修改下面的内容,wq保存。 

    SHIPYARD_PORT=${PORT:-6000}

     3.4 安装

    sh deploy

    由于我并没有修改端口,故部署完后shipyard的页面是8080

     3.5 登录

     我服务搭在192.168.12.20,端口是默认配置,故访问http://192.168.12.20:8080

     

     账号/密码输入admin/shipyard,点击“登陆”。

     

      

     


    参考资料:

     1. https://docs.docker.com/engine/installation/linux/docker-ce/centos/#prerequisites

     2. https://www.cnblogs.com/cainiaoit/p/6543326.html

     3. 《spring cloud与Docker 微服务架构实战》

  • 相关阅读:
    国内固定电话正则验证:'tel': [/0d{2,3}-d{7,8}(|([-u8f6c]{1}d{1,5}))$/, "请填写有效的电话号码"],
    戴尔3542安装ubuntu时出现:failed to lead ldlinux.c32
    解决:IntelliJ IDEA 编译错误,提示 Compilation failed: internal java compiler error
    超详细~Windows下PyCharm配置Anaconda环境教程!!
    python数据可视化--matplotlib用户手册入门:pyplot画图
    python数据分析——numpy创建多维数组的方式
    python timeit 模块使用,解决%timeit无法使用
    MySQL导入导出数据的中文乱码问题
    如果启动mysql时候,报第一行错误,基本是这个原因没跑了
    mysql安装后服务启动不了(总结)
  • 原文地址:https://www.cnblogs.com/straycats/p/8411248.html
Copyright © 2011-2022 走看看