Spring Boot ile Oluşturduğunuz Microservis EC2 Instance Üzerinde Çalıştırma

Spring Boot Nedir ?

Kısaca Spring Boot’tan bahsettikten sonra örnek uygulamamıza geçelim. Malum dönem microservis dönemi. Spring’de bunun için yöntemler geliştiriyor. Spring Boot hızlı bir şekilde tek başına ayağa kalkan uygulamalar oluşturabilmek için oluşturulmuş bir yöntem.

  • Bir önceki yazımda tomcat sunucusunu kurmayı ve buna war dosyasını deploy etmeyi anlatmıştım. Spring boot bunun yerine uygulamayı main üzerinden kaldıracak şekilde jar oluşturmanızı sağlıyor.
  • Tomcat , Jetty gibi sunucular içine gömülü şekilde çalıştırılıyor. Yani siz jar çalıştırdığınızda Spring Boot Tomcat kendisi ayağa kaldırıyor ve yazdığınız uygulamayı içine kendisi deploy ediyor.
  • Maven’ın kullandığı POM bağımlılıklarını Parent-POM alarak çok basit bir hale getirmişler. Tabi sonuçta bağımlı kütüphanelerde bir azalma yok.
  • Metric ve Healt Check için extra kontroller eklemişler.

Hello World Örneği

Spring Boot ile küçük bir Hello World uygulaması yapıp bunu EC2 instance üzerinde nasıl çalıştırabileceğimize bir bakalım. Kodu buradan GitHub’tan indirebilirsiniz.

  1. Uygulamaya baktığımızda main içerisinden SpringApplication oluştuyoruz. Sonra REST apimizi yazıyoruz.

3. pom dosyasının içerisine Spring-Boot ile ilgili bağımlılıkları ekliyoruz. Burada önemli bir konu repackage execution eklenmesi. Bu sayede jar dosyamızı main den çalıştırabilir hale getiriyoruz.

5. mvn package komutu ile uygulamanızın jar paketini oluşturun.

6. EC2 instance oluşturmayı anlattığım yazıdan EC2 instance kurun. Tomcat kurmanıza gerek yok zaten spring-boot embedded tomcat’i çalıştıracaktır.

7. Oluşturduğunuz jar paketini uzaktaki EC2 sunucusuna atmak için komutu ile terminale scp -i aws.pem target/SpringHello-1.0-SNAPSHOT.jar ec2-user@52.17.143.50:/home/ec2-user/ yazın.

8. EC2 sunucusuna ssh -i “aws.pem” ec2-user@52.17.143.50 ile bağlanın.

9. Uygulamasınızı EC2 sunucusunda java -jar SpringHello-1.0-SNAPSHOT.jar komutu ile çalıştırın.

10. 52.17.143.50:8080 bağlandığınızda Hello World yazdığını göreceksiniz.