Quarkus Projesini Dockerize Etmek Docker İÇerisinde Çalıştırmak
Quarkus Dersleri‘ne devam ediyorum.
Quarkus Uygulamamızı Dockerize edeceğiz yani Docker içerisinde Quarkus uygulamamızı entegre edip. Quarkus projemizi Dokcer içerisinden çalıştırabileceğiz ve örnek uygulama yapacağız.
Quarkus Örneğimizin adı quarkus-ornek-uygulama
bu Quarkus uygulamam
@Path("/")
public class Merhaba {
@GET
@Produces(MediaType.TEXT_PLAIN)
public String hello() {
return "merhaba dünya";
}
}
Code language: PHP (php)
Quarkus uygulamasını code.quarkus.com ya da herhangi bir ide yardımı ile oluşturduysak src/main/docker klasörünün altında bu docker.file otomatik olarak oluşmaktadır. Eğer böyle bir dosya göremiyorsanız aşağıdaki kodu alabilirsiniz.
Docker Dosyası
####
# This Dockerfile is used in order to build a container that runs the Quarkus application in JVM mode
#
# Before building the container image run:
#
# ./mvnw package
#
# Then, build the image with:
#
# docker build -f src/main/docker/Dockerfile.jvm -t quarkus-ornek-uygulama-jvm .
#
# Then run the container using:
#
# docker run -i --rm -p 8080:8080 quarkus/quarkus-ornek-uygulama
#
# If you want to include the debug port into your docker image
# you will have to expose the debug port (default 5005) like this : EXPOSE 8080 5050
#
# Then run the container using :
#
# docker run -i --rm -p 8080:8080 -p 5005:5005 -e JAVA_ENABLE_DEBUG="true" quarkus/quarkus-ornek-uygulama-jvm
#
###
FROM registry.access.redhat.com/ubi8/ubi-minimal:8.3
ARG JAVA_PACKAGE=java-11-openjdk-headless
ARG RUN_JAVA_VERSION=1.3.8
ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en'
# Install java and the run-java script
# Also set up permissions for user `1001`
RUN microdnf install curl ca-certificates ${JAVA_PACKAGE} \
&& microdnf update \
&& microdnf clean all \
&& mkdir /deployments \
&& chown 1001 /deployments \
&& chmod "g+rwX" /deployments \
&& chown 1001:root /deployments \
&& curl https://repo1.maven.org/maven2/io/fabric8/run-java-sh/${RUN_JAVA_VERSION}/run-java-sh-${RUN_JAVA_VERSION}-sh.sh -o /deployments/run-java.sh \
&& chown 1001 /deployments/run-java.sh \
&& chmod 540 /deployments/run-java.sh \
&& echo "securerandom.source=file:/dev/urandom" >> /etc/alternatives/jre/lib/security/java.security
# Configure the JAVA_OPTIONS, you can add -XshowSettings:vm to also display the heap size.
ENV JAVA_OPTIONS="-Dquarkus.http.host=0.0.0.0 -Djava.util.logging.manager=org.jboss.logmanager.LogManager"
COPY target/lib/* /deployments/lib/
COPY target/*-runner.jar /deployments/app.jar
EXPOSE 8080
USER 1001
ENTRYPOINT [ "/deployments/run-java.sh" ]
Code language: PHP (php)
Docker Build Etmek ve Çalıştırmak
Quarkus uygulamamızın Docker buildini yapalım.
docker build -f src/main/docker/Dockerfile.jvm -t quarkus/quarkus-ornek-uygulama .
Şimdi ise çalıştıralım.
docker run -i --rm -p 8080:8080 quarkus/quarkus-ornek-uygulama
Sonraki Quarkus Dersleri’nde görüşmek üzere.
No Comment! Be the first one.