jenkins自动化发布python flask模拟流程

1、前提步骤java

一、安装gitlab git

     yum -y install policycoreutils openssh-server openssh-clients postfixweb

     wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el6/gitlab-ce-8.17.0-ce.0.el6.x86_64.rpm flask

    rpm -ivh gitlab-ce-8.17.0-ce.0.el6.x86_64.rpm服务器

    vi  /etc/gitlab/gitlab.rbssh

        修改成本机IP  external_url 'http://10.120.52.22' ide

 

     gitlab-ctl reconfiguregitlab

     gitlab-ctl restart post

     gitlab-ctl  status 查询状态 测试

      4e7217518547b881c7eae4e44577b55e.png-wh_

      访问地址:http://10.120.52.22       


二、安装jenkins 持续集成

      wget https://mirrors.tuna.tsinghua.edu.cn/jenkins/war/2.90/jenkins.war 

      启动jenkins

       java -jar  jenkins.war & 

       访问地址:http://10.120.52.42:8080


2、思路


以Python flask web开发环境为背景, 经过git提交代码到gitlab后,再用jenkins远程到gitlab构建代码发布到测试服务器上


3、gitlab配置

        

     一、登陆gitlab上面,建立project:flask-demo

     二、在菜单栏上 SSH Keys 中,添加开发环境IP的ssh-key

     三、登陆开发环境IP,克隆git地址

         # git clone git@10.120.52.22:UserCenter/flask-demo.git

         #  cd flask-demo 建立测试文件web.py 

            47b5e515b918766fab451c5cff718024.png-wh_

        四、上传更新代码

            git status 

            git add .

            git commit  -m "new file web.py"

            git push origin  master

        

4、jenkins 配置


   一、登陆http://10.120.52.42:8080/ 控制台

   二、在系统管理-管理插件,安装SSH2 Easy Plugin 插件后重启

   三、建立project项目 flask demo ,添加gitlab地址,远程服务器IP等信息,以下截图

        d0e117d7e1aa94e527167f9e26447583.png-wh_

        cbb03ec8132db827a35842ef02a80df4.png-wh_

        4bb7474bbd70ba48509b097ced5cf0f8.png-wh_

        

   四、系统管理-系统配置

        f46822b8ce8b185aedfe245e187ac11a.png-wh_

     



    五、在project中构建代码,验证远程服务是否更新





其余


一、忘记gitlab 帐号密码处理方法:

gitlab-rails console production
Loading production environment (Rails 4.1.1)
irb(main):001:0> user = User.where(id:1).first
irb(main):002:0> user.password='66668888'
irb(main):003:0> user.save!


二、gitlab数据迁移


查看gitlab版本的命令:

 gitlab-rake gitlab:env:info

2. 备份原a服务器上的的数据

gitlab-rake gitlab:backup:create RAILS_ENV=production

PS: 备份后的文件通常是位于/var/opt/gitlab/backups下, 自动生成文件名文件名如1481529483_gitlab_backup.tar

3. 将步骤2生成的tar文件拷贝到b服务器上相应的backups目录下

能够利用scp进行直接拷贝.

scp username@src_ip:/var/opt/gitlab/backups/1481529483_gitlab_backup.tar /var/opt/gitlab/backups

PS: username为原服务器的用户名,src_ip原服务器IP地址

4. 在b服务器恢复数据

gitlab-rake gitlab:backup:restore RAILS_ENV=production BACKUP=1481529483

PS:BACKUP的时间点必须与原服务器备份后的文件名一致

相关文章
相关标签/搜索