zoukankan      html  css  js  c++  java
  • 自动更新并重启服务

    1. 设置Bitbucket的ssh

    1.1 生成key

    ssh-keygen

    猛回车就好了。

    1.2 配置脚本

    将一下内容保存到~/.bashrc中

    SSH_ENV=$HOME/.ssh/environment

    # start the ssh-agent
    function start_agent {
        echo "Initializing new SSH agent..."
        # spawn ssh-agent
        /usr/bin/ssh-agent | sed 's/^echo/#echo/' > ${SSH_ENV}
        echo succeeded
        chmod 600 ${SSH_ENV}
        . ${SSH_ENV} > /dev/null
        /usr/bin/ssh-add
    }

    if [ -f "${SSH_ENV}" ]; then
         . ${SSH_ENV} > /dev/null
         ps -ef | grep ${SSH_AGENT_PID} | grep ssh-agent$ > /dev/null || {
            start_agent;
        }
    else
        start_agent;
    fi

    将一下内容保存到~/.ssh/config中:

    Host bitbucket.org
    IdentityFile ~/.ssh/id_rsa

    1.3 验证ssh-key

    退出终端,重新登录。

    执行一下命令,查看是否添加了key:

    2048 ae:04:24:bb:21:e8:df:44:81:32:15:09:cb:42:94:a2 /home/pekall/.ssh/id_rsa (RSA)

    1.4 配置Bitbucket

    [Manage account]—>[SSH Keys]—>[Add keys],结果如下:

    image

    将~/.ssh/id_rsa.pub的内容保存到上图Key对应的选项框中,保存即可。

    1.5 工程配置与git使用

    如果已经使用https下载仓库,通过一下方法可以修改。

    获取工程ssh下载方式,并替换./.git/config中的url:

    url = https://bitbucket.org/pekallchengdu/adminportal-play

    改为

    url = git@bitbucket.org:pekallchengdu/adminportal-play.git

    git pull

    不需要输入密码就可以更新了。

    2. 服务器自动配置

    2.1 执行脚本

    #!/bin/sh -e
    # adminportal server management
    #
    # Pull source from bitbucket and restart the server

    #set log
    echo `date` >> /home/pekall/run/run.log
    # enter work dir
    cd /home/pekall/adminportal-play

    # pull source
    echo "get source code"
    git pull

    # kill server
    echo "try to kill current server"
    if [ -f RUNNING_PID ]; then
            echo "to kill current server"
            pid=`head -n 1 RUNNING_PID`
            echo $pid >> /home/pekall/run/run.log
            kill -9 $pid
            rm -rf RUNNING_PID
    fi

    # start it
    echo "start server on 9000"
    #play "start 9001"
    ~/SDK/Web/play-2.1.3/play   "start 9000"

    echo "end"
    #exit 0

    2.2 使用cron配置定时执行

    #crontab -e

    0 6 * * * /home/pekall/run/autoServer
    30 12 * * * /home/pekall/run/autoServer
    0 15 * * * /home/pekall/run/autoServer
    0 18 * * * /home/pekall/run/autoServer

    # sudo /etc/init.d/cron restart

    参考:

    1. Set up SSH for Git

    ------------------------------------------------------------------------------------------------------------------------------------------ 需要荷兰版牛栏、荷兰美素、母婴用品的攻城师、设计师朋友,欢迎关顾【七彩母婴店】【http://qicaoyun.taobao.com】。凡是从博客园得知信息的,全店商品,均可优惠,请告知客服哦。你也可以通过淘代码【D5867219】,在淘宝搜索到我们。收藏有礼哦!
  • 相关阅读:
    postgres 类型转换 cast 转
    postgresql Delete+ join
    输出特定格式的查询内容到文本(不是导出查询结果)
    八步搞定亚马逊中国区HTTPS负载均衡器设置
    这辈子只能碰到一次! 记一次SSL无故被撤消!
    亚马逊S3数据迁移到中国区
    python2 微信三方登录 中文乱码
    GitLab Wiki 内容恢复版本管理
    Django rest_framework 实用技巧
    Django rest_framework 加入时间间隔
  • 原文地址:https://www.cnblogs.com/javawer/p/3326508.html
Copyright © 2011-2022 走看看