用 travis-ci 自动部署 github 上的 angular2 项目到 centos7 的 vps
来源:互联网 发布:lol支持mac系统吗 编辑:程序博客网 时间:2024/06/18 01:25
概述
在 vps 上, 为运行着 travis
的系统生成公钥和私钥, 公钥放在 vps 上, 私钥放到项目目录中, 然后被 travis
拉到系统, 这样, 在 travis
访问 vps 时就可以免密码了
以下所有操作均在 vps 上执行
环境
vps: kylin-ux.com
vps 操作系统: CentOS Linux release 7.3.1611 (Core)
github: https://github.com/shuhm-gh/kdb
本地对应项目目录: /opt/www/kdb
确定 nodejs
最新版本
安装 nvm
git clone https://github.com/creationix/nvm.gitcd nvm/; ./install.shsource /root/.bash_profile
查看版本
nvm list-remote
6.10.3
为最新版本, 作为.travis.yml
中node_js:
的值
为 travis
生成密钥
ssh-keygen -f travis
为 vps 添加 travis
的公钥
cat travis.pub >> ~/.ssh/authorized_keys
加密 travis
私钥
# 切换到项目目录cd /opt/www/kdb/yum install gemyum install ruby-develgem install travistravis login # github 帐号和密码cp /root/travis .travis/travis encrypt-file .travis/travis --add # --add 会将解密命令添加到 .travis.yml
--add
修改的内容
before_install:- openssl aes-256-cbc -K $encrypted_9d6a078f2a50_key -iv $encrypted_9d6a078f2a50_iv -in travis.enc -out .travis/travis -d
提交到 github
git add -Agit commit -m 'travis'git push
查看 https://www.travis-ci.org/
.travis.yml
完整内容
language: node_jsnode_js:- 6.10.3script:- ssh -i .travis/travis root@kylin-ux.com cd /opt/www/kdb/; git pull; npm buildbranches: only: - masterbefore_install:- openssl aes-256-cbc -K $encrypted_9d6a078f2a50_key -iv $encrypted_9d6a078f2a50_iv -in travis.enc -out .travis/travis -d- chmod 600 .travis/travisaddons: ssh_known_hosts: kylin-ux.com
补充
Q: The authenticity of host ‘192.168.0.110 (192.168.0.110)’ can’t be established. RSA key fingerprint is a3:ca:ad:95:a1:45:d2:57:3a:e9:e7:75:a8:4c:1f:9f. Are you sure you want to continue connecting (yes/no)?
A: echo -e "Host 102.201.64.94\n\tStrictHostKeyChecking no\n" >> ~/.ssh/config
或 ssh
加选项 -o stricthostkeychecking=no
Q: 免密
A:
travis encrypt DEPLOY_USER=<csun-username> travis encrypt DEPLOY_PASS=<csun-password>export SSHPASS=$DEPLOY_PASSsshpass -e ssh $DEPLOY_USER@kylin-ux.com
阅读全文
0 0
- 用 travis-ci 自动部署 github 上的 angular2 项目到 centos7 的 vps
- 使用travis-ci自动部署github上的项目
- 手把手教你使用Travis CI自动部署你的Hexo博客到Github上
- 利用 Travis CI 把 Android 项目部署到 github
- 利用Travis CI 让你的github项目持续构建
- HG - Hexo + GitHub + Travis CI = 自动部署博客实现
- 提高开源项目逼格-为你的github项目添加Travis CI
- 利用Travis CI 让你的github项目持续构建(Node.js为例)
- 利用Travis CI 让你的github项目持续构建(Node.js为例)
- Gradle自动化构建到Travis-CI持续集成的理解
- Travis CI用来持续集成你的项目
- 如何将github上的项目部署到oschina
- 使用Travis CI自动打包APK,并发布到fir
- [笔记]利用Webhook实现coding上的代码自动部署到Centos7服务器上
- Travis CI -- 免费的集成测试环境
- 徽章系列3: Travis CI 的使用
- 徽章系列3: Travis CI 的使用
- Travis CI -- 免费的集成测试环境
- ZJCOJ: L先生与质数V4(数论)
- tomcat搭建https服务器+阿里云免费证书
- 链表
- map 数组里放 pair 或 结构体
- 找到一本不错的Linux电子书,附《Linux就该这么学》章节目录。
- 用 travis-ci 自动部署 github 上的 angular2 项目到 centos7 的 vps
- hibernate-组件映射-9
- 为什么下一个5年java后台开发你该选择Spring Boot?
- VC版双人PK版俄罗斯方块
- maven构建多模块
- BOM基础
- 浏览器跨域问题
- JVM调优:选择合适的GC collector (一)
- putty、Xshell远程连接Linux以及密钥认证