docker run -d \ --name=aliyun-ddns-cli \ --restart=always \ -e "AKID=xxx" \ -e "AKSCT=xxx" \ -e "DOMAIN=xxx" \ -e "REDO=600" \ chenhw2/aliyun-ddns-cli
宝塔面板PHP7.2安装Oracle扩展,TP5连接Oracle数据库
第一部分 宝塔面板PHP7.2安装Oracle扩展
1.安装InstantClient
下载打包好的文件,或者到官网下载。(注意要下载basic和devel,用来编译oci和pdo_oci。我这里下载的是rpm,方便安装。我这里下载的是18.3)
将下载的文件放在/usr/lib/oracle/,然后运行命令安装. rpm -ivh /usr/lib/oracle/oracle-instantclient18.3-* 然后打开 /etc/profile vi /etc/profile
在文件底部增加(注意版本和文件路径)
export ORACLE_HOME=/usr/lib/oracle/18.3/client64 export PATH=$PATH:$ORACLE_HOME/bin export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib/oracle/18.3/client64/lib export C_INCLUDE_PATH=$C_INCLUDE_PATH:/usr/include/oracle/18.3/client64 export NLS_LANG='SIMPLIFIED CHINESE_CHINA.ZHS16GBK'
添加后的样子
保存后在终端运行 source /etc/profile,让环境变量立即生效。
2.安装OCI8
这里要注意先将php7.1的配置项【禁用函数】中删除popen、readlink两个函数。然后终端中运行
pecl channel-update pecl.php.net /www/server/php/72/bin/pecl install oci8-2.2.0 --with-php-config=/www/server/php/72/bin/php-config # 执行过程中可能让输入,输入下 shared,instantclient,/usr/lib/oracle/18.3/client64/lib --with-php-config=/www/server/php/72/bin/php-config
3.安装PDO_OCI
因为版本问题不能使用pecl安装pdo_oci,所以自己编译。
下载php源码。将源码包中的压缩包中的ext/pdo_oci文件夹上传到/www/server/php/72/include/php/ext/。
然后将php.ini配置文件中[oci8]下面的oci8.privileged_connect,前面分号去掉,Off修改为On,后面的配置项自己依据实际情况去配置。然后保存重启或重载php服务。
然后终端运行
cd /www/server/php/72/include/php/ext/pdo_oci /www/server/php/72/bin/phpize ./configure --with-php-config=/www/server/php/72/bin/php-config --with-oci8=shared,instantclient,/usr/lib/oracle/18.3/client64/lib make && make install
4.PHP-FPM配置
编辑/www/server/php/72/etc/php-fpm.conf,将下面两行代码加进去。 env[LD_LIBRARY_PATH] = /usr/lib/oracle/18.3/client64/lib env[ORACLE_HOME] = /usr/lib/oracle/18.3/client64/lib
运行成功后,再到php.ini文件中检查是否有两个so,没有的话要记得添加。
#/www/server/php/72/etc/php.ini extension="oci8.so" extension="pdo_oci.so"
第二部分 TP5连接oracle(本来需要装东西,但是这里突然直接好使了??不管了)
database局部配置
// 数据库类型 'type' => 'oracle', // 服务器地址 'hostname' => '127.0.0.1', // 数据库名 'database' => 'ORCL', // 用户名 'username' => 'TEST', // 密码 'password' => 'test', // 端口 'hostport' => '1521',
原文链接:https://blog.csdn.net/pmlptf/article/details/126668688
备忘录
安装宝塔
#Centos安装脚本 yum install -y wget && wget -O install.sh https://download.bt.cn/install/install_6.0.sh && sh install.sh ed8484bec
Angular学习记录
// 安装脚手架 npm install -g angular-cli // 新建Angualr项目 ng new angualrDemo --skip-install 注:如果按照官网的教程只用输入 ng new 项目名 即可,但是这种情况下它会默认使用npm帮我们创建项目并且安装各种依赖,非常耗时间,所以我们后面加上-- skip-install跳过安装依赖的过程. 启动项目 ng serve 默认启动在端口4200 ng serve – open,启动并打开浏览器 ng serve --port 端口 // 终结
Linux中jdk的安装与卸载,及多版本jdk配置(宝塔面板)
一、卸载
1、获取当前已安装版本 rpm -qa | grep jdk 2、卸载不需要的版本(jdk名字得是上边查出来的全称,复制粘贴就行) rpm -e --nodeps jdk1.8.0_121
二、单版本安装
1、官网下载tar.gz后缀的安装包 https://www.oracle.com/java/technologies/downloads/#java11
2、新建一个jdk文件夹,用宝塔面板把安装包上传到这个文件夹里,并且解压
3、执行命令进入配置文件:
vim /etc/profile
执行后如下图,输入E进入编辑模式,
复制如下代码到文件末尾,把JAVA_HOME的路径改成自己的jdk文件夹路径,java名字也改了
export JAVA_HOME=/www/jdk/jdk-11.0.18 export PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
插入后这样
4、保存并退出编辑,重新加载系统配置文件,这样可以使配置立即生效,不用重启
source /etc/profile
5、检查新安装的jdk
java -version
6、将jdk地址添加进宝塔JDK管理
原文链接:https://blog.csdn.net/cs_zhao18/article/details/126473295
服务器宝塔安装Jenkins
一、Jenkins包下载
大家可以从Jenkins官网(https://www.jenkins.io/)根据自己的需要下载最新的版本。
但Jenkins官网下载较慢,容易造成下载失败。可以去国内的开源镜像网站下载Jenkins最新版本。目前博主使用的是清华大学的开源镜像网站(https://mirrors.tuna.tsinghua.edu.cn/jenkins/war/latest/),大家可以根据自己的需要下载对应版本的war包
二、新建java项目 运行war包
1.不要太任意的位置新建jenkins文件夹,将下载的jenkins.war文件上传
2.这里两个坑,一个是宝塔默认生成的启动命令后是server.port=7377 ,要改成 –httpPort=7377
3.第二个项目用户要调成root,否则后面执行脚本会权限不足(这个耽误了很久,尝试给springboot权限失败了,这里只能选root避免权限不足)
这里要安装jdk11,需要安装参考另一个教程
/usr/local/btjdk/jdk-17.0.4.1/bin/java -jar -Xmx1024M -Xms256M /www/wwwroot/jks/jenkins.war --httpPort=7377 启动命令讲解 /usr/local/btjdk/jdk-17.0.4.1/bin/java JDK 的路径 -Xmx1024M -Xms256M 限制最大内存为1024M 最小内存256M --server.port=8656(jenkins 不支持server.port改用httpPort) 启动的端口
三 、运行Jenkins,启动后到日志查看解锁密码下一步会用到
四、输入ip:端口进行访问,访问不通记得查看宝塔是否放行端口
设置全跳过了,直接开始使用
原文链接:https://blog.csdn.net/yzding1225/article/details/127548016
Jenkins中文设置https://blog.csdn.net/zh__quan/article/details/106230100
jenkins配置Git源码管理https://blog.csdn.net/weixin_43507959/article/details/102689513
五创建一个新项目
如果没有maven选项,先安装插件,参考:https://www.likecs.com/show-203813628.html
记得去全局工具里安装maven版本否则下面运行会报错
输入项目名字,选择maven项目
Git项目输入git地址 https的
这里参考https://blog.csdn.net/weixin_43507959/article/details/102689513
参考https://gitee.com/help/articles/4181#article-header0
运行,要么就是maven报错,上面有解决办法,要么就是java报错,解决办法:https://blog.csdn.net/qq_35663625/article/details/123180907
1、根据报错去jenkins机器查看目录(/data/jenkins/workspace/test-zhanjian-super-web)是否存在,上去看该目录存在,原因一可排除 2、通过百度有博客说是jenkins机器的java没有配置环境变量 上jenkins机器查看java环境变量也配置了 最后网上建议做一个软链接,jenkins会自动去bin目录下查找java可执行文件,最终问题解决(具体原因还不知道) # ln -s /www/jdk/jdk-11.0.18/bin/java /usr/local/bin/java
顺利的话这里将会下载文件了
添加后执行的脚本文件
java -version cd ../ # maven 项目名字 # demo-0.0.1-SNAPSHOT.jar 项目打包后的jar包名字 sh start.sh maven demo-0.0.1-SNAPSHOT.jar
并且将 start.sh脚本放在 jenkins目录 .jenkins/workspace 下
#!/bin/bash pathName=$1 # 项目名(项目目录名) project=$2 # jar包名字(target下的jar包名字) if [ "$pathName" = "" ]; then echo -e "\033[0;31m 未输入项目名 \033[0m" exit 1 fi if [ "$project" = "" ]; then echo -e "\033[0;31m 未输入jar包名字 \033[0m \033[0;34m target下的jar包名字 \033[0m" exit 1 fi # 创建java项目目录 mkdir -p /www/javaroot/$pathName # chmod 777 /www/javaroot/$pathName # 删除文件 rm -rf /www/javaroot/$pathName/$project echo "拷贝文件" cp ./$pathName/target/$project /www/javaroot/$pathName/ echo "切换路径" cd /www/javaroot/$pathName/ # 解决jenkins自动杀掉衍生进程 BUILD_ID=dontKillMe # 查询是否有已经存在的进程 #grep -v start.sh 是排除这个sh进程,否则会同时把本进程杀死 start.sh是进程名 pid=`ps -ef | grep demo-0.0.1-SNAPSHOT.jar | grep -v grep | grep -v start.sh | awk '{print $2}'` echo "已存在的进程pid"+$pid if [ -n "$pid" ] then kill -9 $pid echo "杀死存在进程" fi echo "启动项目" nohup java -jar $project --spring.profiles.active=dev >/dev/null 2>&1 & date #打印时间 echo "启动成功!"
出现这个界面说明已经运行成功
Linux文件更改编码
在Windows下编写了一个Shell脚本,上传到Linux中,无法运行。经查找,发现是编码不同的问题。
解决方案: 1.Linux下使用VI编辑器打开文件。 2.查看编码 :set ff 3.修改为Unix :set ff=unix 4.保存退出 :wq
宝塔面板使用WebHook配合gogs搭建钩子 Git push上传自动推送到服务器
第一步宝塔软件商店安装webhook
第二步 点击webhook设置添加脚本
脚本内容
#!/bin/bash echo "" #输出当前时间 date --date='0 days ago' "+%Y-%m-%d %H:%M:%S" echo "开始" #判断宝塔WebHook参数是否存在 if [ ! -n "china" ]; then echo "param参数错误" echo "End" exit fi #git项目路径 gitPath="/www/wwwroot/$1" #git 网址 gitHttp="git@gitee.com:tyaa/test-hook.git" echo "Web站点路径:$gitPath" #判断项目路径是否存在 if [ -d "$gitPath" ]; then cd $gitPath #判断是否存在git目录 if [ ! -d ".git" ]; then echo "在该目录下克隆 git" sudo git clone $gitHttp . fi echo "拉取最新的项目文件" #sudo git reset --hard origin/master sudo git pull echo "设置目录权限" sudo chown -R www:www $gitPath echo "End1" exit else echo "该项目路径不存在" echo "新建项目目录" mkdir $gitPath cd $gitPath #判断是否存在git目录 if [ ! -d ".git" ]; then echo "在该目录下克隆 git" sudo git clone $gitHttp gittemp sudo mv gittemp/.git . sudo rm -rf gittemp fi echo "拉取最新的项目文件" #sudo git reset --hard origin/master sudo git pull echo "设置目录权限" sudo chown -R www:www $gitPath echo "End2" exit fi
文件夹最好是空的
git命令操作
// 更新到远程仓库 $ git add . //指定更新内容 . 表示全部更新,test.txt 表示更新指定文件 $ git commit -m "一些注释说明" //添加更新说明 $ git push origin master //执行更新操作 // 从远程仓库同步最新版本到本地 $ git pull origin master // 克隆 $ git clone https://gitee.com/yourname/repository // 本地初始化 $ git init //初始化本地项目 $ git remote add origin <远程仓库地址> //绑定远程仓库 #注:地址形式为 https://gitee.com/yourname/test.git 或 git@gitee.com:yourname/test.git //查看所在目录的分支 git branch -a //输入命令切换分支 适用于第一次创建并切换分支 $ git checkout -b develop origin/develop // 其中远程分支为origin/develop,本地分支为zhanghanlun 如果已经有本地分支,直接输入命令 $git checkout develop // 强制推送,注意会强制删除原有仓库中的某些代码 $git push -u origin master -f // 如果本地版本与远程版本有差异,但又要强制推送,使用 --force 参数: git push --force origin master git 本地改动了,不保留,直接拉取线上最新代码 git fetch --all git reset --hard origin/master
apache网站无法接收请求头的问题
// 经测试只经过这一行就ok了 #这行是最重要的,加载apache配置文件的最后一行 SetEnvIf Authorization .+ HTTP_AUTHORIZATION=$0
原文地址:https://blog.csdn.net/kevlin_V/article/details/126935404