Spring Boot

Spring Boot Uygulamasını Docker Image Oluşturmak Çalıştırmak

Spring Boot Dersleri‘ne devam ediyorum.

Bu yazıda Spring Boot uygulamamızı bir Docker image oluşturup Docker Container çalıştırmayı anlayacağım.

Basit bit uygulama yapalım. Merhaba Dünya mesajı veren bir Rest Controller yapalım.

Controller’imiz şu şekilde olacak

@RestController
public class HelloWorldController {
	
	@RequestMapping("/")
	public String index() {
		return "Merhaba Dünya https://blog.burakkutbay.com";
	}
}

Uygulamamızı çalıştıralım ve çalıştığından emin olalım.

Merhaba Dünya https://blog.burakkutbay.com

Uygulamamız çalışıyor şimdi bu yaptığımız uygulamamızı dockerize edelim.

Projimizi build edelim ve çalışmaya hazır hale getirelim.

mvn clean package

Docker

Projemizin bulunduğu dizine Dockerfile adında bir dosya oluşturacağız. Bu dosya içerisinde Docker imajının içerisinde projemizin çalışması gereken bağımlılıkları port ayarlamaları gibi adımları tanımlıyoruz.

#JDK kurulumunu yapıyoruz
FROM adoptopenjdk:11-jre-hotspot

#Projemizin olduğu yeri gösteriyoruz ve kopyalıyoruz
ARG JAR_FILE=target/*.jar
COPY ${JAR_FILE} springbootdockerapplication.jar

#Çalışacağı portu belirliyoruz
EXPOSE 9980

#Projemizi calistıracak komutu yazıyoruz.
ENTRYPOINT ["java","-jar","/springbootdockerapplication.jar"]

Dockerfile’ı oluşturduk. Bu file ile birlikte Docker Image’miz bu dosyaya göre oluşmasını sağlayabiliriz.

Şimdi oluşturalım.

docker build -t myspringdockerapp -f Dockerfile .

Bu komut sonrasında imajımız oluşmaya başlar gerekli dosyaları indirir ve imaj dosyası bizim istediğimiz ayarlara göre oluşturulur.

İşlem tamamlandı ise aşağıdaki komutu yazarak oluşup oluşmadığına bakalım.

docker images -a

Bize bir liste verir.

REPOSITORY             TAG                    IMAGE ID               CREATED                SIZE
myspringdockerapp      latest              ae438i2gfb28        5 minutes ago       263MB

Docker imajımızı çalıştıralım.

sudo docker run -p 9999:8080 myspringdockerapp

Docker imajımızı çalıştırdık -p komutu ile 9999 portunda çalışan docker imajındaki projemizin portunu eşleştirmiş olduk. localhost:9999 yazarak ise projemize ulaştırmış olduk.


Projenin Kaynak Kodlarına Ulaş
Önceki Ders: Spring Boot Uygulamasını Github kullanarak Heroku’ya Deploy Etmek
Spring Boot Dersleri
Sonraki Ders: Spring Boot CORS CrossOrigin Kullanım Uygulama Örneği

More in:Spring Boot

You may also like

Leave a reply

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir