分类 默认分类 下的文章

withCredentials([usernamePassword(credentialsId: '1.1.1.1-SSH', passwordVariable: 'PassWord', usernameVariable: 'UserName')]){
   def remote = [name:'root',host:'1.1.1.1',port:22,allowAnyHosts:true,user:UserName,password:PassWord]
        stage("部署服务"){
            writeFile file: 'deploy.sh', text: """#!/bin/bash
cd /data/server
ver_now=`cat docker-compose.yaml | grep image | awk -F: '{print \$NF}'`
time=`date +%F-%H-%M`
mkdir -p /data/bak
cp docker-compose.yaml /data/bak/\${time}.yaml
echo docker-compose.yaml中版本号是\${ver_now} 更新的版本号是${IMAGES_TAG}
sed -i "s/\${ver_now}/${IMAGES_TAG}/g" docker-compose.yaml
docker pull registry.cn-chengdu.aliyuncs.com/vv/server:${IMAGES_TAG}
docker-compose down
sleep 1
docker-compose up -d
"""
            sshScript remote: remote, script: 'deploy.sh'}

今天被自己坑的事情:

sshScript remote: remote, script: 'deploy.sh'

用于执行本地的脚本/命令,如果是执行远程服务器上面的脚本应该使用

sshScript remote: remote, command: '~/deploy.sh'

另一个需要注意的地方:在本地执行远程脚本的时候,脚本里面的远程变量需要转义,否则jenkins会报错找不到变量,因为jenkins会将它当成本地全局变量操作。

环境:
CentOS7.9+nginx+php+pgsql
坑一:
在初始化界面找不到pgsql插件
解决方案:
安装了php-pgsql之后,需要重启php-fpm

坑二:
不能写入配置文件
解决方案:
将文件夹给nginx:nginx并授予777权限

坑三:
这也是耽搁时间最长的一个问题,进来之后主页可以正常访问,但是其他页面几乎都是404
解决方案:
1、在admin/options-permalink.php界面启用地址重写功能;
2、nginx配置添加如下:

location ~ \.php$ {
    try_files $uri $uri/ =404;
    if (-f $request_filename/index.html){
        rewrite (.*) $1/index.html break;
    }
    if (-f $request_filename/index.php){
        rewrite (.*) $1/index.php;
    }
    if (!-f $request_filename){
        rewrite (.*) /index.php;
    }
}

坑四:
我以为所有的问题都搞定之后,发布本文的时候遇到问题,正常发布文档没问题,但是添加未添加过的标签的时候报报错“Database Query Error”
解决方案:
先在标签界面添加相关的标签,再编译文章就不会出现了。
技术上待解决
坑五:
上传附件失败
chmod -R 777 ./usr/uploads
本目录权限在nginx上需要由apache上传文件