美文网首页
Jinkens 部署rails 服务

Jinkens 部署rails 服务

作者: 葫芦葫芦快显灵 | 来源:发表于2019-10-17 19:10 被阅读0次

最近把rails项目改为使用脚本部署后,每次发版都需要登录服务器,而且java项目使用的jenkins部署,故改为jenkins部署,这里记录一下踩的坑。

  • 1.创建一个自由风格的项目
    因为打算执行shell来部署脚本,故选用free_style的项目,如果选用流水线的话需要在rails 项目加一个JenkinsFile


    image.png

    jenkins的项目名称要与要部署的项目名称一致,它会在节点上创建一个jenkins的项目名称的目录

    1. 在 General 配置
      描述:自己项目的功能,非必须,为了便于维护还是有必要填写的
      限制项目运行的节点: 这个必须限制下,要不会部署在已知的节点
      -- 2.1 节点配置
      在系统管理-节点管理 中可以创建新的节点


      image.png

      这里并发构建数 最好与服务器的核数一致

  • 3.源码管理
    选择git, 添加项目的地址,jenkins 的公钥要事先配置到代码库
    配置分支:


    image.png

jenkins 会自动拉取相应分支的代码到节点上,注意:拉下来的项目并不会由分支名,而是上一次提代码的tag

    1. 构建
      选择执行shell
#!/bin/bash -l                                  #-l 为login,必加,否则会在安装jenkins的服务器上执行脚本
export BUILD_ID=dontKillMe   # 必加,否则 jenkins 执行完脚本会杀死衍生的进程
./deploy.sh release-1.1                   # 部署脚本,  不要加sh

deploy.sh

#! /bin/bash
if [ -z $1 ]
then
    branch='master'
else
    branch=$1
fi
echo "$branch"
git checkout $branch
git pull
pids=$(cat tmp/pids/server.pid | awk $'{print $1}')
if [ ! -z $pids ]
then
    echo "$pids"
    kill -9 $pids
fi
bundle
rails db:migrate

env=$(cat /etc/profile | grep RAILS_ENV |awk $'{print $2}')
if [ $env = "RAILS_ENV=production" ]
then
    echo "Production"
    rails s -p 3000 -d
else
    echo "Staging"
    rails s -p 4000 -d
fi

相关文章

  • Jinkens 部署rails 服务

    最近把rails项目改为使用脚本部署后,每次发版都需要登录服务器,而且java项目使用的jenkins部署,故改为...

  • rails4升级到rails5

    将近一天的折腾,把rails4升级到了rails5,部署到了服务器 Rails4 -> Rails5 修改Gemf...

  • capistrano半自动部署rails程序

    1.部署服务器 首先是服务器的基础配置,各种装先调整服务器时间 然后更新服务器 rvm ruby rails 上边...

  • rails创建项目并使用bootstrap

    rails 5.0 安装部署 1、新项目创建 rails new railsproject --skip-bund...

  • jinkens自动化部署

    情景:在本地开发完成后,提交代码到gitlab,gitlab上的代码会同步到多个集群机器,并可以在多台机器完成一些...

  • rails[6]:服务器部署

    服务器环境:阿里云 ubuntu14.04ubuntu的官方参考资料更新服务器 添加部署用户deploy,设置密码...

  • Debian 服务器部署Rails

    很久以前写的文章,一直放在硬盘上,Debian部署Rails很多次了;这是总结的最快最稳定的部署方式;以过往的经验...

  • rails部署

    production中key缺失问题 production环境下样式缺失问题 mac下进行passenger和ng...

  • 博客

    14年用rails4.2做过一个线上博客,域名是zhengjiajun.me,部署在heroku服务器上面,现在已...

  • jenkins的使用

    jenkins学习博客jinkens总结:

网友评论

      本文标题:Jinkens 部署rails 服务

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