简介

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

安装

首先创建一台服务器

我使用的是centos之后使用我的centos初始化脚本初始化一下

curl -O https://raw.githubusercontent.com/bboysoulcn/centos/master/centos.sh

接着就来安装这个玩意

首先安装go

下载go

wget https://dl.google.com/go/go1.11.5.linux-amd64.tar.gz

解压

tar -zxvf go1.11.5.linux-amd64.tar.gz

mv go /usr/local

添加环境变量

vim /etc/profile

在文件最后添加

export PATH=$PATH:/usr/local/go/bin

之后

source /etc/profile

go 安装完成

安装git

yum install git

安装nginx

安装依赖

yum install pcre-devel zlib-devel openssl-devel

下载nginx

wget https://nginx.org/download/nginx-1.14.2.tar.gz

解压

tar -zxvf nginx-1.14.2.tar.gz

编译安装

cd nginx-1.14.2 && ./configure --prefix=/usr/local/nginx/ && make -j 4 && make install

之后添加环境变量

vim /etc/profile

加入

export PATH=$PATH:/usr/local/nginx/sbin/

之后

source /etc/profile

使用systemed管理nginx

vim /etc/systemd/system/nginx.service

加入

[Unit]
Description=This is nginx service is Powered by bboysoul
After=syslog.target network.target remote-fs.target nss-lookup.target[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStartPre=/usr/local/nginx/sbin/nginx -t
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s stop[Install]
WantedBy=multi-user.target

启动nginx

systemctl restart nginx

systemctl status nginx

部署mysql

下载

wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.14-1.el7.x86_64.rpm-bundle.tar

解压

tar -xvf mysql-8.0.14-1.el7.x86_64.rpm-bundle.tar

安装

yum install ./*.rpm

设置root密码,首先查看现在root密码

systemctl start mysqld

  ~ cat /var/log/mysqld.log
2019-01-30T09:32:42.986730Z 0 [System] [MY-013169] [Server] /usr/sbin/mysqld (mysqld 8.0.14) initializing of server in progress as process 6081
2019-01-30T09:32:49.182874Z 5 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: &%/JDroDY8KB
2019-01-30T09:32:50.263850Z 0 [System] [MY-013170] [Server] /usr/sbin/mysqld (mysqld 8.0.14) initializing of server has completed
2019-01-30T09:32:52.485123Z 0 [System] [MY-010116] [Server] /usr/sbin/mysqld (mysqld 8.0.14) starting as process 6128
2019-01-30T09:32:53.079695Z 0 [Warning] [MY-010068] [Server] CA certificate ca.pem is self signed.
2019-01-30T09:32:53.101782Z 0 [System] [MY-010931] [Server] /usr/sbin/mysqld: ready for connections. Version: '8.0.14'  socket: '/var/lib/mysql/mysql.sock'  port: 3306  MySQL Community Server - GPL.
2019-01-30T09:32:53.139743Z 0 [System] [MY-011323] [Server] X Plugin ready for connections. Socket: '/var/run/mysqld/mysqlx.sock' bind-address: '::' port: 33060

mysql_secure_installation

按照流程操作

之后重启一下mysql的服务

systemctl restart mysqld

安装syncd

首先下载二进制包

wget https://github.com/dreamans/syncd/releases/download/1.1.2/Syncd-v1.1.2-linux-amd64.tar.gz

解压

tar -zxvf Syncd-v1.1.2-linux-amd64.tar.gz

mv Syncd-v1.1.2-linux-amd64 /usr/local/syncd

导入数据库

wget https://raw.githubusercontent.com/dreamans/syncd/master/syncd.sql

  ~ mysql -u root -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.0.14 MySQL Community Server - GPLCopyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql> create database syncd;
Query OK, 1 row affected (0.01 sec)mysql> use syncd
Database changed
mysql> source /root/syncd.sql;
Query OK, 0 rows affected (0.03 sec)Query OK, 0 rows affected (0.03 sec)Query OK, 0 rows affected (0.03 sec)Query OK, 0 rows affected (0.03 sec)Query OK, 0 rows affected (0.02 sec)Query OK, 0 rows affected (0.03 sec)Query OK, 0 rows affected (0.02 sec)Query OK, 0 rows affected (0.02 sec)Query OK, 0 rows affected (0.04 sec)Query OK, 1 row affected (0.01 sec)Query OK, 0 rows affected (0.02 sec)Query OK, 1 row affected (0.01 sec)Query OK, 0 rows affected (0.02 sec)mysql>

修改配置文件

vim /usr/local/syncd/etc/syncd.ini

我的配置文件就不贴了,都是中文配置起来很简单的

启动

输入下面的命令就可以启动

./bin/syncd -c ./etc/syncd.ini

  syncd ./bin/syncd -c ./etc/syncd.ini_______   __  __   ____     _____   ____/ // ___/  / / / /  / __ \   / ___/  / __  /(__  )  / /_/ /  / / / /  / /__   / /_/ /
/____/   \__, /  /_/ /_/   \___/   \__,_//____/Service:              syncd
Version:              1.1.0
Config Loaded:        ./etc/syncd.ini
Workspace:            /tmp/.syncd
Log:                  "/usr/local/syncd/log/syncd.log"
Database:             127.0.0.1
Mail Enable:          0
HTTP Service:         :8868
Start Running...

如果你想后台的话那就使用screen这个命令好了

之后修改nginx的配置

vim /usr/local/nginx/conf/nginx.conf

在最后的括号之前加上

include ./vhosts/*.conf;

之后添加新的配置文件

mkdir /usr/local/nginx/conf/vhosts

vim /usr/local/nginx/conf/vhosts/syncd.conf

加入

upstream syncdServer {server 127.0.0.1:8868 weight=1;
}
server {listen       8080;server_name  localhost; # 此处替换成你的真实域名access_log   /usr/local/syncd/log/syncd-nginx.log;location / {try_files $uri $uri/ /index.html;root /usr/local/syncd/public/; # 此处/path请替换成真实路径index index.html index.htm;}location ^~ /api/ {proxy_pass          http://syncdServer;proxy_set_header    X-Forwarded-Host $host:$server_port;proxy_set_header    X-Real-IP     $remote_addr;proxy_set_header    Origin        $host:$server_port;proxy_set_header    Referer       $host:$server_port;}
}

之后直接浏览器打开ip:8080就可以访问了

默认

  • 用户名: syncd
  • 邮箱: syncd@syncd.cc
  • 密码: syncd.cc

更新git

目前为止centos的官方仓库的git版本是1.8.3.1

如果使用这个版本会出现下面这个问题,这个花了我十分钟找问题原因,后来作者一秒钟就回答我原因了,是git版本太低的问题,那么就重新安装git就可以了

删除本地git

yum remove git

安装依赖

yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel

下载

wget https://github.com/git/git/archive/v2.20.1.tar.gz

解压

tar -zxvf v2.20.1.tar.gz

编译安装

cd git-2.20.1/

make all

make install

看下版本

git --version

使用

第一步我们添加一个服务器

点击集群管理->新建集群->输入集群名字

之后我们添加服务器,注意服务器和syncd这台机器要可以免密登录,我syncd这台服务器的ip是192.168.17.65要部署项目的服务器是192.168.17.96,所以要在192.168.17.65执行

ssh-keygen

ssh-copy-id root@192.168.17.96

点击服务器管理->新增服务器->输入相关信息

之后的步骤还是看作者的流程图吧,很简单的,如果写要一大堆,懒得写了

欢迎关注Bboysoul的博客www.bboysoul.com

Have Fun

syncd的使用和部署相关推荐

  1. Syncd - 开源自动化部署工具

    官网地址:https://gitee.com/dreamans/syncd/issues syncd是一款开源的代码部署工具,它具有简单.高效.易用等特点,可以提高团队的工作效率. 目前只支持类Lin ...

  2. Syncd: 一款Go语言开发的开源自动化部署工具

    Syncd - 自动化部署工具 syncd是一款开源的代码部署工具,它具有简单.高效.易用等特点,可以提高团队的工作效率. 项目地址 https://github.com/dreamans/syncd ...

  3. rsync 服务快速部署手册

    一.rsync服务端安装 1.查看rsync安装包 # rpm -qa rsync rsync-3.0.6-12.el6.x86_64 2.安装rsync 系统默认都会安装rsync软件包的,如果查看 ...

  4. Kubernetes 中 设置pod不部署在同一台节点上

    在k8s中,节点的调度主要由亲和性和污点来进行控制的.   而在亲和性部分由分为了节点亲和性和节点反亲和性.   节点亲和性是指在pod部署时,尽量(软策略)或者必须满足(硬策略)部署在某些节点上. ...

  5. 将jar包部署在docker上,将jar包打成镜像,使用docker部署jar包

    假设你已经准备好以下东西,即可进行服务部署 一台安装好docker的linux服务器(安装docker见安装docker) 准备好的jar包 接下来开始吧! 将jar包上传至服务器(建好文件夹存放以方 ...

  6. jar包升级部署到服务器详细流程,将服务部署在linux中

    假设你已经准备好以下东西,即可进行服务部署 一台服务器(云服务器或虚拟机皆可) 已安装好的jdk 1.8 + 的环境(可自行百度) 打好的jar包(maven打jar包) 1. 在服务器中新建好你的项 ...

  7. jar包部署shell脚本编写,在服务器上部署jar包,在Linux服务器上部署服务,设置编码格式,设置内存管理

    准备步骤: 1.安装java环境,知道java安装目录 2.将jar包拖放或发送至服务器中(目录自定义) 一.编写shell脚本,将以下代码放在shell脚本中,将shell脚本放在jar包同级目录下 ...

  8. 在docker上安装部署tomcat项目 超简单,拿来主义

    在docker中部署tomcat,非常简单,而且省去了手动安装jdk等步骤,只需要将war包复制在容器tomcat实例中的webapps下面即可.以下将详细讲解流程: 在windows中打好包以后用w ...

  9. 【CentOS】利用Kubeadm部署Kubernetes (K8s)

    [CentOS]利用Kubeadm部署Kubernetes (K8s)[阅读时间:约10分钟] 一.概述 二.系统环境&项目介绍 1.系统环境 2.项目的任务要求 三.具体实验流程 1 系统准 ...

最新文章

  1. .net中连接SYBASE的种种问题
  2. 大疆车载招聘|SLAM、地图定位、感知算法、机器学习算法工程师
  3. 怎么用u盘在服务器上传文件,U盘向云服务器传输文件吗
  4. 数位dp 3943 二分法
  5. 平台和计算机技术,两大平台技术提升及优势功能PK对比
  6. 【Docker】WARNING: Published ports are discarded when using host network mode
  7. MVC5+EF6之EF CRUD
  8. 缩短与时间服务器同步时间,局域网内时间服务器架设与客户端设置
  9. C++ std::vector 容器 是什么
  10. 微信api接口调用-给微信好友或群聊发消息
  11. wifi上行下行速度测试_测试网速_测试网速wifi在线测试
  12. java fastfds操作文件
  13. [R语言]RMarkdown: 入门与操作
  14. flashback总结六之Flashback_Transaction_Query
  15. Camunda BPM 初步了解
  16. HTML网页开发手册
  17. 中国空间科学技术 参考文献
  18. LeetCode第111题解析
  19. 警告: com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@40bb7f0a -- Acquisition Attempt Failed
  20. 春招来了,如何正确使用领英超高效招聘海外员工、挖掘人才?

热门文章

  1. .net core 1.1 mysql_Asp.net Core 1.1 升级后操作mysql出错的解决办法|chu
  2. dell2100服务器组装,戴尔poweredge r730服务器配置及系统安装详解教程
  3. linux 获取so基址,ld.so分析5 _dl_start
  4. python比较数据工具_Python模拟数据工具哪些比较好用
  5. Python套接字通信实例
  6. Windows 命令模式下删除驱动
  7. 查看oracle的版本、所在表空间、字符集及查询一个表的所有字段名和数据类型
  8. VB 写文件关联程序
  9. 引用网易等相册的图片出现防盗链怎么办呢?看这里就迎刃而解!(转贴)
  10. 智能一代云平台(一):一些思考