Walle部署的经验

一. 项目配置

 

=================================================================================================php

项目名称:根据状况填写java

项目环境:测试环境,预发布环境,线上环境linux

地址:填写代码检出的地址,能够是gitlab或是github或是svn等,若是是git,格式必须是ssh-url git

宿主机:运行Walle的机器github

代码检出仓库:/data/www/deploy/from  注:必须在linux服务器上新建此目录,walle会从git上拉代码到此路径web

排除文件:.git/.svn/README.md等不需上线的文件tomcat

=================================================================================================服务器

目标机器:须要部署项目的机器app

用户:目标机器部署用户,通常填root,由于权限最大ssh

webroot:/opt/tomcat-9080_walle/webapps/tarot_test  :tomcat的webapps下项目打的包的名称,“tarot_test”不能有这个路径,Walle会帮你新建

发布版本库:每次发布版本的存放路径,每次发布的时候会软连接到相应的版本路径

版本保留数:版本数

机器列表:部署到哪一个机器上,通常是IP地址,非22端口的则IP:端口

=================================================================================================

高级任务:填写一些发布前预准备的操做和发布须要的命令

 

pre_deploy:暂时没有用到

post_deploy: 一些maven打包,将获取git更新的文件,拷贝到版本库中,若有多条,一行一行写,能够在每行中间打印语句,来检查是否执行到了

pre_release:给运行walle的用户(以下图用户名是walle)部署的路径的权限,具体地址看具体状况

post_release:执行tomcat中止和重启命令,通常写成脚本,以下图

=================================================================================================

以上信息所有填好以后,点击提交

 

二. 项目检测以及排除问题使检测经过

 

宿主机代码检出检测出错,请确认php进程用户{user}有代码存储仓库{path}读写权限,且把ssh-key加入git的deploy-keys列表。详细错误:{error}

 

问题:请确认php进程用户{user}有代码存储仓库{path}读写权限

 

没有权限,是由于用户{user}对目录{path}没有读写权限,给权限便可
ll {path}
chown {user} -R {path}
chmod 755 -R {path}

 

问题:把ssh-key加入git的deploy-keys列表

 

su {user} && cat ~/.ssh/id_rsa.pub
打开 github/gitlab/bitbucket 网站, 添加 ssh-key 到ssh-keys列表

添加完以后,用user来git clone项目源码,拉下来以后则能够经过此错误

 

目标机器部署出错,请确认php进程{local_user}用户ssh-key加入目标机器的{remote_user}用户ssh-key信任列表,且{remote_user}有目标机器发布版本库{path}写入权限。详细错误:{error}

  • 问题:请确认php进程{local_user}用户ssh-key加入目标机器的{remote_user}用户ssh-key信任列表

    添加机器信任,仍是没理解请百度吧(由于太多的同窗问这问题,实在没办法只能这么啰嗦)
    su {local_user} && ssh-copy-id -i ~/.ssh/id_rsa.pub remote_user@remote_server
    # need remote_user's password

    须要local_user 添加目标机器root用户的免密码登陆

    问题:{remote_user}有目标机器发布版本库{path}写入权限

    su remote_user
    ll {path}
    chown {remote_user} -R {path}
    chmod 755 -R {path}

 

三. 建立上线单,部署

 

  

点击个人上线单

 

点击建立上线单

  

选择本身建立的项目

  1. 填写上线单标题
  2. 选取分支
  3. 版本选取:选择相应的git记录
  4. 全量/增量:java项目只能用全量
  5. 点击提交

点击提交上线

点击部署

部署过程当中,若是错误了,下方会有提示,不过最好打开日志查看,日志路径在/tmp/walle下,若是没有此路径,新建一个

 

部署须要注意的: 在walle部署前,先杀掉须要部署的tomcat的进程,再点击部署

相关文章
相关标签/搜索