美文网首页
自动化部署工具Syncd介绍

自动化部署工具Syncd介绍

作者: mcknight | 来源:发表于2020-08-27 17:03 被阅读0次

Syncd是一款开源的代码部署工具,它具有简单、高效、易用等特点,可以提高团队的工作效率。官网地址:https://syncd.cc/

特性

  • Go语言开发,编译简单、运行高效
  • Web界面访问,交互友好
  • 权限模型灵活自由
  • 支持自定义构建
  • 支持Git仓库
  • 支持分支、Tag上线
  • 部署Hook支持,可扩展性强
  • 完善的上线工作流
  • 邮件通知机制

部署流程

这是我自己通过测试发现的syncd部署上线的流程,看完这个流程再结合自己的需求是否使用该工具

  • 从git仓库clone代码到syncd所属服务器上
  • 通过tar命令将项目压缩成一个文件
  • 通过scp命令把压缩文件拷贝到配置好的服务器上
  • 在目标服务器上解压文件
  • 完成

安装syncd

环境需求

操作系统
Linux / macOS + Bash. 需要注意的是Syncd不支持Win系统。
Go 编译环境
Syncd依赖 Go1.11+ 编译环境,可前往官方网站国内镜像 下载安装。
MySQL
MySQL 5.6+
Git
升级操作系统Git到最新版本。

安装

通过命令即可快速安装,如果出现报错,检查一下环境是否满足需求

 curl https://syncd.cc/install.sh | bash

导入数据库

数据库文件位于syncd安装目录下的resource/sql文件夹中,通过数据库导入命令,将数据导入数据库中。

配置文件

配置文件为syncd-deploy/etc/syncd.ini,其中的配置简单易懂,主要修改数据库相关配置即可

启动

进入到syncd-deploy目录下的bin文件夹中,执行./syncd即可运行,在浏览器中打开http://IP:8878即可进入到登录页。登录账号:syncd 密码:111111

使用

项目空间

项目空间是项目的基本组织单元,是进行项目和多用户隔离和访问控制的主要边界。
项目 -> 空间管理 -> 新增项目空间

image.png

项目管理

项目 -> 项目管理 -> [切换项目空间] -> 新增项目

image.png

成员管理

管理成员所属项目
项目 -> 成员管理 -> [切换项目空间] -> 添加新成员

image.png

集群管理

管理服务器集群
服务器 -> 集群管理 -> 新增集群

image.png

服务器管理

管理集群下的服务器,部署服务器(Syncd服务所在的服务器)与生产服务器(代码部署目标机)之间通过ssh协议通信,所以需要将部署服务器的公钥 (一般在这里: $HOME/.ssh/id_rsa.pub)加入到生产机的信任列表中(一般在这里 $HOME/.ssh/authorized_keys

image.png

构建配置

配置支持的变量只有两个

  • ${env_workspace}
    代码仓库本地副本目录
  • ${env_pack_file}
    打包文件绝对地址,构建完成后将需要部署到线上的代码打包到此文件中,必须使用 tar -zcf 命令进行打包。
    部署模块会将此压缩包分发到目标主机并解压缩到指定目录,请按照要求打包,否则会部署失败。
    配置示例
cd ${env_workspace}
tar -zcvf ${env_pack_file} *

新建上线申请单

  • 选择项目


    image.png
  • 填写上线单


    image.png

上线

image.png
image.png

总结

Syncd看上去功能比较简单,但是针对小项目的集群发布比较容易。
参考:https://syncd.cc/docs/#/

相关文章

  • 自动化部署工具Syncd介绍

    Syncd是一款开源的代码部署工具,它具有简单、高效、易用等特点,可以提高团队的工作效率。官网地址:https:/...

  • Syncd 用户名密码忘记解决

    一个开源的自动化部署服务 Syncd 的管理员用户密码忘记怎么办?登录 MySQL 数据库进行以下操作: 解释以上...

  • ansible运维

    第 1 章 Ansible 介绍及安装 1.1 介绍 Ansible 是一个 IT 自动化工具。它能配置系统、部署...

  • 一、Ansible快速入门&资产

    第 1 章 Ansible 介绍及安装 1.1 介绍 Ansible 是一个 IT 自动化工具。它能配置系统、部署...

  • syncd的使用和部署

    简介 syncd是一款开源的代码部署工具,它具有简单、高效、易用等特点,可以提高团队的工作效率. 安装 首先创建一...

  • 2021-Ansible学习

    一.关于什么是Ansible? 1.Ansible即:自动化部署工具. 2.Ansible 介绍和架构; 公司计划...

  • Ansible工具使用

    1、介绍 Ansible是一个自动化管理IT资源的工具。 功能: 系统环境配置安装软件持续集成:自动化部署热回滚 ...

  • fastlane使用说明

    fastlane 介绍 Fastlane是一套使用Ruby写的自动化工具集,旨在简化Android和iOS的部署过...

  • GitLab CI/CD

    目录 一.概念介绍 1.1 gitlab-ci && 自动化部署工具的运行机制 以gitlab-ci为例: (1)...

  • 文集说明

    本文集主要介绍的一款可以实现自动化部署的工具 —— Jenkins。 该部分所有的示例均是基于 CentOS 7。...

网友评论

      本文标题:自动化部署工具Syncd介绍

      本文链接:https://www.haomeiwen.com/subject/dvacsktx.html