以下内容已屏蔽图片优化访问速度 |
---|
[IMG] 官网:[IMG]编译成可上线的软件包 在这一环节中,可运行单元测试 (例如 go test php phpunit, 下载依赖 (如 go: glide install php: composer install), 编译软件包 (如 js: npm build go: go build xx.go java: javac xx.java c: cc xx.c) 等. 分发 通过 scp 命令分发软件包到各机房生产服务器的临时目录, 远程执行 pre-deploy 配置的命令, 执行完毕后解压缩软件包到目标目录,然后执行 post-deploy 命令 分发上线过程是串行执行,并且任意步骤执行失败整个上线单会终止上线并将状态置为上线失败,需要点击 再次上线 重试. 将来会支持同一集群服务器并行执行, 集群之间串行发布的特性 SSH信任 生产服务器与部署服务器之间通过ssh-key建立信任 配置方法请参考 秘钥配置 章节 安装 准备工作 Go 推荐Go1.10以上版本, 用来编译源代码 Git 请保持部署Syncd服务器的git版本为最新(>=2.20) Nginx Web服务依赖Nginx MySQL 系统依赖Mysql存储持久化数据, 推荐版本 Mysql 5.7 Linux + Bash 系统会使用到 git, ssh, scp 等命令,所以目前只推荐在Linux上使用, 并且需要提前安装或更新这些命令道最新版本 秘钥配置 由于部署服务器(Syncd服务所在的服务器)与生产服务器(代码部署目标机)之间通过ssh协议通信,所以需要将部署机的公钥 (一般在这里: ~/.ssh/id_rsa.pub)加入到生产机的信任列表中(一般在这里 ~/.ssh/authorized_keys) 可使用 ssh-copy-id 命令添加,或手动拷贝. 拷贝后不要忘记进行测试连通性 ssh {生产机用户名}@{生产机地址} 最后建议将以下配置加入到部署服务器ssh配置/etc/ssh/ssh_config中,关闭公钥摘要的显示提示,防止后台脚本运行失败 Host * StrictHostKeyChecking no 请注意: ssh目录权限需按此设置,否则会出现无法免密登录的情况 ~/.ssh 0700 ~/.ssh/authorized_keys 0600 安装 二进制包安装 二进制包下载地址:[IMG][IMG]|bash 当前路径中若生成 syncd-deploy 或者 syncd-deploy-xxx 目录则表明安装成功 生成的 syncd-deploy 目录可拷贝或移动到你想要的地方,但不要试图将此目录拷贝到其他服务器上运行,会造成不可预料的结果. 数据库依赖 你需要将 github.com/dreamans/syncd/syncd.sql 数据表结构和数据导入到MySQL数据库中 修改配置文件 修改 syncd-deploy/etc/syncd.ini 中相关配置信息, 具体配置描述可参考注释 启动服务 cd syncd-deploy ➜ syncd-deploy ./bin/syncd -c ./etc/syncd.ini __ _____ __ __ ____ _____ ____/ / / ___/ / / / / / __ \ / ___/ / __ / (__ ) / /_/ / / / / / / /__ / /_/ / /____/ \__, / /_/ /_/ \___/ \__,_/ /____/ Service: syncd Version: 1.0.0 Config Loaded: ./etc/syncd.ini Log: stdout Database: 127.0.0.1 Mail Enable: 0 HTTP Service: :8868 Start Running... 添加Nginx配置 upstream syncdServer { server 127.0.0.1:8868 weight=1; } server { listen 80; server_name deploy.syncd.cc; # 此处替换成你的真实域名 access_log logs/deploy.syncd.cc.log; location / { try_files $uri $uri/ /index.html; root /path/syncd-deploy/public; # 此处/path请替换成真实路径 index index.html index.htm; } location ^~ /api/ { proxy_pass [IMG] 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; } } 重启nginx服务 修改hosts 若域名未解析,可修改hosts进行临时解析 sudo vim /etc/hosts 127.0.0.1 deploy.syncd.cc; 安装完成 打开浏览器,访问 [IMG]syncd 邮箱: syncd@syncd.cc 密码: syncd.cc !!!登录后请尽快修改密码 使用 系统使用流程图 [IMG] 使用截图 [IMG] [IMG] [IMG] [IMG] [IMG] [IMG] [IMG] 帮助 遇到问题请提 issue:[IMG]MIT 开源授权许可证,完整的授权说明已放置在 LICENSE 文件中 - MORE | 往期精彩文章 - 最烂密码、神级密码和逆天改命密码,我给跪了.. IOS 微信7.0.3版本发布,打造小程序桌面系统 王者99个月年终奖VS程序员锁死服务器公司倒闭亏600万 shell一出手,分析服务器日志不用愁! 运维工程师打怪升级之路V1.0版本发布 1047行 MySQL 详细学习笔记(值得学习) Linux工程师一定要知道的六类好习惯和23个教训 与努力同样重要的是,学会做好这6点! 如果你喜欢本文 请长按二维码关注民工哥技术之路 [IMG] 转发朋友圈,是对我最大的支持。 [IMG] 扫码加群交流 点击【阅读原文】公众号所有的精华都在这里 [IMG] |