• Reliable Master 部署
    • 环境要求
    • 基本用法
    • 配置
      • 小提示
  • 添加管理员
  • 运行状态
  • 数据备份
  • 服务集成
  • 截图
  • 下一步

    注: 本方案适合有 Node.js 二次开发能力的用户实践

    Reliable Master 部署

    Reliable 是 Node.js 实现的分布式持续集成服务。

    为了快速上手 Reliable,我们推荐你使用 Docker 进行部署,这样就无需考虑 redis, mongodb 等第三方工具。

    Macaca-Docker

    环境要求

    • git >= 2.0
    • docker >= 1.9.1
    • docker compose >= 1.5.2
    Note: 若采用 Docker 部署,则无需考虑 nodejs,redis 及 mongodb 版本

    基本用法

    git clone 下源代码后(windows系统建议直接下载压缩包格式或者在git clone之前执行git config –global core.autocrlf false,环境搭建完成后记得改回去),你可以使用 docker 和 docker-compose 来部署 reliable,步骤如下:

    1) build reliable-docker-base 镜像:

    1. $ git clone https://github.com/reliablejs/reliable-docker-base --depth=1
    2. $ cd reliable-docker-base
    3. $ docker build -t="reliable-docker-base" .

    运行 docker images,你可以看到 reliable-docker-base 镜像。

    2) build reliable-master 镜像:

    1. $ git clone https://github.com/reliablejs/reliable-master --depth=1
    2. $ cd reliable-master
    3. $ docker build -t="reliable-master" .

    运行 docker images,你可以看到 reliable-master 镜像。

    3) 使用 docker-compose 启动:

    1. $ git clone https://github.com/reliablejs/reliable-macaca-docker-compose.git --depth=1
    2. $ cd reliable-macaca-docker-compose
    3. $ make start

    编辑 docker-compose.yml 来配置你的 master。

    1. reliable-master:
    2. container_name: "reliable-master"
    3. restart: "UNLESS-STOP"
    4. image: reliable-master
    5. ports:
    6. - "${RELIABLE_MASTER_PORT}:${RELIABLE_MASTER_PORT}"
    7. links:
    8. - mongo:mongo
    9. - redis:redis
    10. environment:
    11. - DB_SERVICE=mongo
    12. - DB_PORT=27017
    13. - DB_NAME=reliable_dev
    14. volumes:
    15. - /etc/localtime:/etc/localtime:ro
    16. command: /reliable-master/bin/reliable-master server -p ${RELIABLE_MASTER_PORT} --verbose
    17. mongo:
    18. container_name: "reliable_mongo"
    19. restart: always
    20. image: mongo
    21. volumes:
    22. - /var/mongo/data/db:/data/db
    23. - /etc/localtime:/etc/localtime:ro
    24. redis:
    25. container_name: "reliable_redis"
    26. restart: always
    27. image: redis
    28. volumes:
    29. - /etc/localtime:/etc/localtime:ro

    配置

    relibale 的默认配置在 config.js 中,你可以用一个命名为 *.reliable.config.js 的文件覆盖默认配置,以下是一些可配置点:

    注意: 不要试图更改 mongodb 和 redis 的配置项,因为 docker-compose 需要这些。 如果确实需要更改,请修改 docker-compose.yml。
    • 服务端服务端设置,如端口等。
    • 网站一些个性化配置,如 title, baseurl 等。
    • 登录配置第三方 token,如 Github,Gitlab。
    • 邮件邮件服务配置,可参考 Nodemailer。
    小提示

    Reliable 启动需要一些时间,请稍作等待。

    添加管理员

    在 reliable-master 中使用 make adduser 命令添加管理员用户(对于 docker container 可以使用 docker exec -it make adduser,下同)。

    运行状态

    在 reliable-slave 中使用 make status 获取 slave 运行状态。

    数据备份

    在 reliable-master 中使用 make dump 以从 MongoDB 中 dump 数据。

    在 reliable-master 中使用 make restore 将数据重新存储至 MongoDB。

    你也可以使用 crontab 备份数据。参考 scripts/cron.sh,自行配置后,添加到 crontab script 中。 如:

    1. $ crontab -e

    可配置项:

    • home - 当前用户 home 目录。
    • repo - reliable 项目文件夹。
    • url - 获取 slave 信息的链接,http://<hostname>:<port>/slaves,如 http://localhost:3333/slaves

    服务集成

    想要集成其它的服务如 Gitlab-CI 或 Jenkins?

    POST macaca-host/api/task/create/gitlab-push.json 来创建任务。

    更多信息,请查看 gitlab 文档。

    截图

    reliable-1

    reliable-2

    reliable-3

    下一步

    部署 slave

    原文: https://macacajs.github.io/zh/master-deployment