如何将.jar上传到 AWS EC2 并重新启动运行它的 JVM?



我是Amazon Web Services的新手,我想了解将.jar工件上传到EC2的最佳方法。

我有一个EC2 Linux实例与Java服务器运行在它上面。我想有一个简单而优雅的方式来更新服务器。至于现在,我必须通过SSH终止服务器,通过SFTP上传新的.jar,然后通过SSH再次运行服务器。

是否有一个解决方案,这将是更好的和更具可扩展性比上面的脚本?

如果它有任何意义,我用IntelliJ IDEA工作,所以它的插件也会适合。或者可能会有一个框架来接管更新?

根据您需要的解决方案有多重要,我会给CodeDeploy看一下:http://aws.amazon.com/codedeploy/details/

如果你想要更轻的内容:

  • 你可以看看Ansible
  • 你可以查看一个定时拉出jar的cron-job,它与正在运行的相比是新的,停止/复制/启动服务。
  • 如果我们谈论的是几台机器,那么仅仅使用SSH是没有问题的。

您可以尝试在每个EC2实例上运行cron,检查新的JAR文件(在S3 repo中)并在每次更新时重启JVM。有点笨拙,但绝对比为每个实例执行一个脚本更具可伸缩性(特别是如果你想在将来使用一个自动伸缩组)

如果你正在做一个相对较小的应用程序,并且想要在你400美元的windows笔记本电脑上快速完成它:

  1. 从aws获取您的密钥…执行转换。
  2. 设置putty从步骤1。
  3. 安装winscp导入putty连接
  4. 运行winscp…在winscp中单击aws ec2实例。
  5. 将springboot jar拖放到aws上。——

最新更新