问题

最新需要在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

参考:

  • chattr -lsattr 文件加锁解锁简单用法
  • Spring boot部署CentOS7
  • Spring Boot的JAVA_OPTS配置参数
  • 1. Deploying to the Cloud

AWS EC2部署SpringBoot相关推荐

  1. AWS EC2压测及实例性能

    最近涉及到AWS EC2 production环境选型及server压测的问题.需要自己仔细了解AC2 性能及收费的问题. AWS 的客服需要给钱每月29刀.而不用它客服,它文档里很多问题又模糊不清. ...

  2. 微信小程序开发后台篇(四)AWS EC2实例云部署---Windows环境通过PuTTY连接EC2实例

    在windows上开发springboot项目,直接通过windows将项目jar包部署到AWS EC2上,部署运行,并成功访问. 一.创建EC2实例 新建EC2实例 生成密钥对 访问AWS主页.单击 ...

  3. aws 删除ec2实例_如何在AWS EC2实例上部署Spring Boot应用程序

    aws 删除ec2实例 你好朋友, 在本教程中,我们将看到如何在AWS EC2实例上部署Spring Boot应用程序. 这是我们将要执行的步骤. 1.使用Spring Boot Initialise ...

  4. 如何在AWS EC2实例上部署Spring Boot应用程序

    你好朋友, 在本教程中,我们将看到如何在AWS EC2实例上部署Spring Boot应用程序. 这是我们将要执行的步骤. 1.使用Spring Boot Initialiser创建一个Spring ...

  5. aws ec2 tomcat部署

    原文: https://www.cnblogs.com/dige1993/p/6395925.html?utm_source=itdadao&utm_medium=referral 感谢上面这 ...

  6. 在AWS EC2上搭建jenkins并且整合git+maven+docker自动化部署环境(一)

    日以继日这套环境终于搭建好了,并且能够一键打包部署服务,这个环境我打算分成几个章节来说明,本章节介绍如何在AWS配置搭建EC2服务 AWS上部署搭建EC2实例 aws是一个云平台,里面有很多组件,比如 ...

  7. docker使用mongo_如何使用Docker在AWS上部署Mongo:初学者的权威指南

    docker使用mongo 为什么需要这个? (Why you need this?) 因为JS + Python + Mongo =完整的数据开发 (Because JS + Python + Mo ...

  8. 在AWS中部署OpenShift平台

    OpenShift是RedHat出品的PAAS平台.OpenShift做为PAAS平台最大的特点是它是完全容器化的PAAS平台,底层封装了Docker和Kubernetes,上层暴露了对开发者友好的接 ...

  9. 使用Capistrano向EC2部署Django代码--关于SSH相关的配置

    使用Capistrano向EC2部署Django代码--关于SSH相关的配置 - foxracle - 博客园 使用Capistrano向EC2部署Django代码--关于SSH相关的配置 在使用Ca ...

最新文章

  1. 点击后,过段时间cell自动取消选中
  2. 学习python自动化运维笔记文件比较
  3. python 如何查看模块所有方法-Python查看模块函数,查看函数方法的详细信息
  4. java枚举使用示例
  5. MFC中的控件是怎么实现的呢?一个按钮就是一个窗口?还是所有按钮画在一个分层窗口上再叠
  6. 核磁谱图分析步骤_质谱仪、红外光谱、核磁共振氢谱
  7. snmp的oid查询方法
  8. linux怎么进tmp目录,关于linux下tmp文件夹
  9. 2021年中国5G手机发展现状及市场竞争格局分析:华为持续领跑国内5G手机市场[图]
  10. CEF 、chromium源码下载前相关代理配置
  11. 各博客平台编辑器使用测评
  12. 最优化算法学习笔记+个人总结(一)
  13. Activiti7实战二:实现具有拒签功能的请假2层审批流程
  14. 【Android 10 源码】healthd 模块 HAL 2.0 分析
  15. Vue百度地图电子围栏
  16. python如何求阶乘_python如何求阶乘
  17. 惯性环节、延迟环节 原理性理解
  18. [React Native]使用App Center CLI发布CodePush更新--iOS简易版
  19. IDA中点击apply patches to 显示 patching canceled..导致无法使用
  20. 适用于Java开发人员的微服务:管理安全性和机密

热门文章

  1. 从零开始手撸一个热修复框架
  2. android vsync,VSYNC  |  Android 开源项目  |  Android Open Source Project
  3. MyBatis-Plus快速入门
  4. OFBiz安装与配置
  5. [尚硅谷22版shiro]学习笔记
  6. iOS常用国外网站清单
  7. 李国庆在直播间说了多少大实话
  8. 【路径规划】基于matlab FMM快速行进法船舶路径规划【含Matlab源码 2291期】
  9. MQTT(一)C#使用 MQTTnet 快速实现 MQTT 通信(文末有完整Demo下载)
  10. oracle补丁集2020,Oracle发布2020年首批关键补丁更新,多达334个安全补丁