Syncd 安裝部署

目錄

簡介:

安裝準備

開始安裝

方案1,(國內用戶無法成功, 因爲無法拉取 go.lang.org)

方案2(修稿 mod 替換 go.lang.org 依賴)

修改剛剛  install.sh

之後執行剛剛修改的腳本

新建mysql的庫和用戶

導入數據庫

修改 syncd 的數據庫信息,

運行 syncd


簡介:

Syncd是一款開源的代碼部署工具,它具有簡單、高效、易用等特點,可以提高團隊的工作效率。

環境需求

操作系統

Linux / macOS + Bash. 需要注意的是Syncd不支持Win系統。

Go 編譯環境

Syncd依賴 Go1.11+ 編譯環境,可前往官方網站 或 國內鏡像 下載安裝。

操作可以參考

https://blog.csdn.net/qq_21047625/article/details/89053569

MySQL

MySQL 5.6+

安裝參考: https://mp.csdn.net/postedit/89053070

Git

升級操作系統Git到最新版本。

參考官方文檔: https://git-scm.com/book/zh/v1/%E8%B5%B7%E6%AD%A5-%E5%AE%89%E8%A3%85-Git

原理:

Syncd通過 git-ssh 方式創建倉庫本地副本,通過運行項目構建腳本來生成可發佈的代碼包,使用 scp 串行/並行地向生產服務器分發並解包部署。

Syncd與生產服務器通過ssh交互,因此Syncd運行用戶的 ssh-key 必須加入到目標主機的用戶ssh-key信任列表中。

安裝準備

新建對應的用戶和用戶組

[syncd@VM_121_116_centos ~]$ groupadd syncd
[syncd@VM_121_116_centos ~]$ useradd -g syncd syncd
[syncd@VM_121_116_centos ~]$ passwd syncd

新建目錄

[syncd@VM_121_116_centos ~]$ mkdir -p /user/local/syncd

開始安裝

國內用戶無法訪問go.lang.org ,採用方案2

方案1,(國內用戶無法成功, 因爲無法拉取 go.lang.org)

到新建的目錄下執行命令

[syncd@VM_121_116_centos ~]$ cd /usr/local/syncd/
[syncd@VM_121_116_centos syncd]$ curl https://syncd.cc/install.sh | bash

錯誤

執行過程中如果報以下錯誤, 是因爲服務器無法訪問 go.lang.org , 請採用方案2

build command-line-arguments: cannot load golang.org/x/sys/unix: unrecognized import path "golang.org/x/sys" (https fetch: Get https://golang.org/x/sys?go-get=1: dial tcp 216.239.37.1:443: i/o timeout)
make: *** [build] Error 1
cp: cannot stat ‘/home/syncd/.syncd-repo/output’: No such file or directory

方案2(修稿 mod 替換 go.lang.org 依賴)

修改剛剛  install.sh

先用wget下載剛剛用的 sh

 

[syncd@VM_121_116_centos syncd]$ cd /usr/local/syncd/
[syncd@VM_121_116_centos syncd]$ wget https://syncd.cc/install.sh

修改 install.sh

[syncd@VM_121_116_centos syncd]$ vim install.sh 

代碼裏面加上到指定位置.

##替換依賴解決翻牆
echo "replace (" >> go.mod
echo "        golang.org/x/crypto  => github.com/golang/crypto latest" >> go.mod
echo "        golang.org/x/net  => github.com/golang/net latest" >> go.mod
echo "        golang.org/x/sys => github.com/golang/sys latest" >> go.mod
echo "        cloud.google.com/go => github.com/googleapis/google-cloud-go latest" >> go.mod
echo ")" >> go.mod

注意, 版本更新後如果還有其他的包無法下載, 可以依據上面的方式替換成 github的源

之後執行剛剛修改的腳本

[syncd@VM_121_116_centos syncd]$ chmod 755 install.sh 
[syncd@VM_121_116_centos syncd]$ ./install.sh 

目錄下面出現 syncd-deploy 文件夾表示成功

新建mysql的庫和用戶

登錄mysql

[root@VM_121_116_centos ~]# mysql -u root -p

新建數據庫和用戶

注意: 儘量不要使用utf8 編碼, 要使用的話,  請使用 utf8mb4

create schema syncd default character set utf8mb4;

use mysql

CREATE USER syncd IDENTIFIED BY 'QQ123qaz!';

GRANT ALL PRIVILEGES ON syncd.* TO syncd@'%';

flush privileges; 

導入數據庫

 進入 剛剛建的用戶

[root@VM_121_116_centos ~]# mysql -u syncd -p

選擇 syncd 數據庫,執行  syncd-deploy/resource/sql/  腳本, 腳本文件名依據版本不同可自行查看

執行腳本要注意, 下面截圖中所有表的字符集,  記得改成和mysql的庫一致

改完之後導入即可

mysql> use syncd
Database changed
mysql> source /usr/local/syncd/syncd-deploy/resource/sql/syncd_v2.0.0.sql
ERROR 1007 (HY000): Can't create database 'syncd'; database exists

這裏的錯誤是因爲我們自己手工創建了 syncd 數據庫, 無需關心

修改 syncd 的數據庫信息,

[syncd@VM_121_116_centos syncd]$ vim syncd-deploy/etc/syncd.ini 

運行 syncd

[syncd@VM_121_116_centos syncd]$ cd syncd-deploy/
[syncd@VM_121_116_centos syncd-deploy]$ nohup ./bin/syncd

訪問

默認用戶密碼

syncd/111111

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章