问题
最新需要在AWS云上面的EC2上面部署Spring。
步骤
分配用户
sudo useradd --system --home /var/api --shell /sbin/nologin --comment "api user" --user-group api
创建文件夹
sudo mkdir /var/api && sudo chown -R api /var/api && sudo chgrp -R api /var/api && sudo chmod 707 -R /var/api
SysV配置文件
sudo vim /etc/systemd/system/api.service
配置内容如下:
[Unit]
Description=api
After=syslog.target
[Service]
User=api
Group=api
ExecStart=/var/api/api.jar
SuccessExitStatus=143
[Install]
WantedBy=multi-user.target
启动服务:
sudo systemctl enable api.service
上传Spring Jar文件
Spring外部配置文件
sudo vim /var/api/api.conf
内容类似如下:
JAVA_OPTS="-Dspring.profiles.active=dev -server -Xms8g -Xmx8g -XX:MaxGCPauseMillis=500 -XX:+UseParallelGC"
RUN_AS_USER="api"
重制文件权限
sudo chown -R api /var/api
sudo chgrp -R api /var/api
sudo chmod 700 -R /var/api
sudo chmod 500 /var/api/api.jar
sudo chattr +i /var/api/api.jar
sudo chmod 400 /var/api/api.conf
sudo chown api:api /var/api/api.conf
注意这里是使用了文件加锁权限,如果需要解锁需要使用下面命令:
sudo chattr -i /var/api/api.jar
# 查看锁
sudo lsattr /var/api/api.jar
启动 api 服务
sudo systemctl start api.service
配置 EC2 安全组
放开 9011 端口
重新部署
sudo chattr -i /var/api/api.jar && sudo chmod 707 -R /var/api && sudo rm /var/api/api.jar
# 删除文件,重新上传文件。。。。
# 上传完成后
sudo chown -R api:api /var/api && sudo chmod 700 -R /var/api && sudo chmod 500 /var/api/api.jar && sudo chmod 400 /var/api/api.conf && sudo chattr +i /var/api/api.jar && sudo systemctl stop api.service && sudo systemctl start api.service
# 查看实时日志
journalctl -u api.service -f