linux离线部署web项目以及jar程序和nginx开机自启的动配置

离线部署相关

        准备文件有jdk-17,mysql-8.0.39,nginx-1.20.2,tar.gz的压缩包,还有zlib-1.2.11.tar.gz

pcre-8.35.tar.gz压缩包。

  1.mysql数据库安装与配置

        Linux安装Mysql详细教程(两种安装方法)_linux 安装mysql-CSDN博客

        参考这篇博客即可,博主写得超级好。

        但是应该是我环境变量没配,在linux下的情况和win不同,不是直接安装好就可以使用mysql命令了,我当时懒得配置环境变量了,因为我systemctl status mysql已经成功运行了,如下图,这就意味着可以用了。

28e8444a5433484dbb2f188a12eed808.png

那不配置怎么登入mysql呢,在mysql的安装目录下的bin文件夹内,./mysql -u root -p 后输入密码即可,然后修改密码,导入部署所需的数据库即可。

Create database healthsys;

Use dbname;

source /home/abc/abc.sql;

2.nginx安装 

第一步:

直接tar解压

解压nginx包,安装nginx

tar -zxvf nginx版本.tar.gz

第二步:

解压依赖包pcre和zlib即可,放到/usr/local/下,也可以其它路径,看自己,这两直接解压就行。

第三步:

进入到nginx的解压目录下

./configure --without-http_gzip_module 这种是表示禁用模块,还没试过

./configure --with-zlib=/usr/local/zlib --with-pcre=/usr/local/pcre  ,--with-xxx=路径,表示指定编译的包所在的路径。

之后ls一下,查看是否存在makefile,有的话说明可以了。

5d60759b1f9f4bc8984cd5218942eeb8.png

configure之后的结果是这样的,nginx path prefix说明了一会你make, make install 之后安装的地方,你也可以在./configure的时候指定安装路径,--prefix=安装路径

第四步:

Sudo make

Sudo make install

Make的过程中会缺包,但可能系统里有的,自己加上变量,

Make ACLOCAL=xxx/xxx/ AUTOMAKE=xxx/xxx AUTOCONF=xxx/xxx

这个包的路径通过sudo find / -name “包的名字” 2>/dev/null去找,2前面有一个小空格,

然后就会输出包所在的路径。

找到之后要给这个包赋权,chmod +x xxx/xxx/xxx-1.14,不然一会make的时候还是说权限不够。

目前来看缺三个我的系统都有,aclocal,automake,autoconf

make完之后直接make install之后就没问题了。

第五步:

查看/usr/local/里有没有nginx这个文件,有的话就ok了,放静态资源配置nginx.conf即可。

3.jdk的安装

①解压

tar  -zxvf  jdk.tar.gz

②在/usr/local下创建一个文件夹,一遍移动过去

Mkdir /usr/local/jdk

③移动

Sudo mv  jdk解压文件 /usr/local/jdk

④配置环境变量

Cd  /etc里面有一个profile文件

注意:误删profile的补救方法

sudo cp /usr/share/base-files/profile  /etc/profile

系统有备份到最原始的环境变量文件

在文件最后补上这几个java的配置

export JAVA_HOME=/app/toolFile/java/jdk1.8.0_401 ##记得改成自己的jdk安装路径

export JRE_HOME=${JAVA_HOME}/jre

export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib

export PATH=${JAVA_HOME}/bin:$PATH

然后退出

Source  ~/.bashrc

Source /etc/profile

Java -version,查看有版本信息表名安装成功,但这个时候你重新开一个终端发现找不到java命令,重启一下就好了,不用慌。

 

开机自启动

nginx的开机自启动

我是用systemctl设置的开机自启动,因为我找不到rc.local在这个文件就放弃那种方法了。

b88557224e94451a92d7c20559fa5ed9.png

文件里写以下内容保存即可。

29bed30c028a4983a7927d6d7e85bc8b.png

设置文件权限:

sudo chmod 644 /etc/systemd/system/nginx.service

重载

sudo systemctl daemon-reload

启用启动

sudo systemctl enable nginx

sudo systemctl start nginx

 

查看运行状态

systemctl status nginx

查看运行日志

sudo journalctl -u nginx (-f)加个-f日志会实时变化

查看报错

Cat 到nginx安装目录的error.log

jar程序的开机自启动

和nginx一样的逻辑,下面给出配置的内容

ff20c43116454733a5d466c706de26c3.png

springapp.service的配置如下:

 

2126dc26ca544865835689d45e1632fa.png

 

也可以不用root用户,因为权限太大了不安全,那个environment是数据库相关的配置,配置连接数据库的环境,因为systemctl和shell的环境是不一样的,前者不会使用后者的环境。弄好之后还有chmod一下jar程序包

f24b253997294a82a65664d1a80e4438.png

重启之后,可以通过 ps aux | grep “[j]ar”查看是否在运行

因为自启动了,你可以通过sudo journalctl -u nginx (-f)加个-f日志会实时变化,查看运行的状态,进行调整配置。

 

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值