配置spring boot开机自启动;编辑/lib/systemd/system/b2b2c.service
[Unit]
Description=B2B2C Server
Documentation=https://xxxxx.com
[Service]
User=root
Group=root
Type=simple
Restart=no
KillMode=process
ExecStart=/home/bbc-shop/jar_auto.sh
#ExecStop=/home/bbc-shop/jar_auto.sh stop
#ExecReload=/home/bbc-shop/jar_auto.sh restart
RemainAfterExit=yes
[Install]
WantedBy=multi-user.target
上面的jar_auto.sh脚本如下:
#!/bin/bash
#配置jdk的路径
export JAVA_HOME=/usr/java/jdk1.8.0_341-amd64 #此处为我的java环境路径,需要改为自己的JDK路径
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
#有时需要把jar包延时启动(比如博主不设置延时启动jar,nacos会提示拒绝连接)
#延时30S运行jar包,需要延时启动则放开sleep注释行 (sleep+数字,表示延迟多少秒启动)
#sleep 30 #有点奇怪,设置了延时有一个jar包起不来,此处延时仅供参考
#配置jar包启动的路径 日志生成路径 nohup表示静默启动
# 启动api,1g内存,可以根据服务器内存调整大小,推荐最低1G
nohup java -jar -Xms1024m -Xmx1024m -Xss256k -XX:SurvivorRatio=8 -XX:+UseConcMarkSweepGC -Dspring.profiles.active=prod /home/bbc-shop/java/yami-shop-api-0.0.1-SNAPSHOT.jar > "/home/bbc-shop/java/log/api-console.log" &
# 启动商家端,512M内存,可以根据服务器内存调整大小,推荐最低512M
nohup java -jar -Xms512m -Xmx512m -Xss256k -XX:SurvivorRatio=8 -XX:+UseConcMarkSweepGC -Dspring.profiles.active=prod /home/bbc-shop/java/yami-shop-multishop-0.0.1-SNAPSHOT.jar > "/home/bbc-shop/java/log/multishop-console.log" &
# 启动客服服务,512M内存,可以根据服务器内存调整大小,推荐最低512M
nohup java -jar -Xms512m -Xmx512m -Xss256k -XX:SurvivorRatio=8 -XX:+UseConcMarkSweepGC -Dspring.profiles.active=prod /home/bbc-shop/java/yami-shop-im-0.0.1-SNAPSHOT.jar > "/home/bbc-shop/java/log/im-console.log" &
# 启动平台端服务,512M内存,可以根据服务器内存调整大小,推荐最低512M
nohup java -jar -Xms512m -Xmx512m -Xss256k -XX:SurvivorRatio=8 -XX:+UseConcMarkSweepGC -Dspring.profiles.active=prod /home/bbc-shop/java/yami-shop-platform-0.0.1-SNAPSHOT.jar > "/home/bbc-shop/java/log/platform-console.log" &
# 启动job
nohup java -jar -XX:SurvivorRatio=8 -XX:+UseConcMarkSweepGC -Dspring.profiles.active=prod -Dfile.encoding=utf-8 /home/bbc-shop/java/xxl-job-admin-2.3.0.jar > "/home/bbc-shop/java/log/xxl-job-console.log" &
npm的web启动开机自启动编辑/lib/systemd/system/b2b2c-pc.service
[Unit]
Description=B2B2C PC Server
Documentation=https://xxxxx.com
[Service]
User=root
Group=root
Type=simple
Restart=no
KillMode=process
ExecStart=/home/b2b2c-pc/start.sh
#ExecStop=/home/bbc-shop/jar_auto.sh stop
#ExecReload=/home/bbc-shop/jar_auto.sh restart
RemainAfterExit=yes
[Install]
WantedBy=multi-user.target
以上start.sh的内容如下:
#!/bin/bash
echo '准备启动 b2b2c-pc...'
cd /home/b2b2c-pc && nohup npm run start
#echo 'b2b2c-pc启动完毕!'
elasticsearch-7.9.1的编辑/etc/systemd/system/elasticsearch.service
[Unit]
Description=elasticsearch 7.9.1
[Service]
Type=forking
User=elastic
LimitNOFILE=65536
LimitNPROC=65536
ExecStart=/home/elasticsearch-7.9.1/bin/elasticsearch -d
[Install]
WantedBy=multi-user.target
kibana-7.9.1开机自启动编辑/etc/systemd/system/kibana.service
[Unit]
Description=Kibana 7.9.1
[Service]
User=lolido
ExecStart=/home/kibana-7.9.1-linux-x86_64/bin/kibana
[Install]
WantedBy=multi-user.target
Minio开机自启编辑/lib/systemd/system/minio.service
[Unit]
Description=Minio Service
[Service]
#Environment="MINIO_ROOT_USER=admin"
#Environment="MINIO_ROOT_PASSWORD=admin"
ExecStart=/home/minio/minio server /home/minio/data --console-address ":9999" --address ":9000"
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
StandardOutput=/home/minio/logs/server.log
PrivateTmp=true
[Install]
WantedBy=multi-user.target
mysql-8.0.31开机自启动编辑/lib/systemd/system/mysqld.service
[Unit]
Description=MySQL Server
Documentation=man:mysqld(8)
After=network.target
After=syslog.target
[Service]
User=lolido
Group=lolido
ExecStart=/home/mysql-8.0.31/bin/mysqld --defaults-file=/home/mysql-8.0.31/my.cnf
LimitNOFILE = 5000
[Install]
WantedBy=multi-user.target
Mysql8.0.31配置文件如下:
[mysqld]
port = 3306
server-id = 3306
user = mysql
socket = /tmp/mysql.sock
# 安装目录
basedir = /home/mysql-8.0.31
# 数据存放目录
datadir = /home/mysql-8.0.31/data
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10
# 服务端使用的字符集默认为UTF8
character-set-server=utf8mb4
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
default_authentication_plugin=mysql_native_password
# 关闭 only_full_group_by
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8mb4
max_allowed_packet = 100M
Nginx自启动编辑/lib/systemd/system/nginx.service
[Unit]
Description=nginx
After=network.target
[Service]
Type=forking
ExecStart= /usr/local/nginx/sbin/nginx
ExecReload= /usr/local/nginx/sbin/nginx reload
ExecStop= /usr/local/nginx/sbin/nginx quit
PrivateTmp= true
[Install]
WantedBy=multi-user.target
Redis自启动编辑/etc/systemd/system/redis.service
[Unit]
Description=Redis
After=network.target
[Service]
ExecStart=/usr/local/redis/bin/redis-server /usr/local/redis/bin/redis.conf --daemonize no
ExecStop=/usr/local/redis/bin/redis-cli -h 127.0.0.1 -p 6379 shutdown
[Install]
WantedBy=multi-user.target