So stellen Sie eine Kotlin (Java) -App auf AWS fargate bereit

Punkt

--Wenn die in der Taskdefinition von fargate unter "Taskspeicher" angegebene Speichermenge überschritten wird, wird die Task zwangsweise beendet.

Umgebung

Dockerfile

FROM openjdk:8-jre-alpine

ENV APPLICATION_USER ktor
RUN adduser -D -g '' $APPLICATION_USER

RUN mkdir /app
RUN chown -R $APPLICATION_USER /app

USER $APPLICATION_USER

COPY ./build/libs/my-application.jar /app/my-application.jar
WORKDIR /app

CMD ["java", "-server", "-XX:+UnlockExperimentalVMOptions", "-XX:+UseCGroupMemoryLimitForHeap", "-XX:InitialRAMFraction=2", "-XX:MinRAMFraction=2", "-XX:MaxRAMFraction=2", "-XX:+UseG1GC", "-XX:MaxGCPauseMillis=100", "-XX:+UseStringDeduplication", "-XX:MaxMetaspaceSize=256M", "-XshowSettings:vm", "-jar", "my-application.jar"]

Grundsätzlich [ktor Dokumentation](https://jp.ktor.work/quickstart/quickstart/docker.html#docker%E3%82%A4%E3%83%A1%E3%83%BC%E3% Basierend auf 82% B8% E3% 81% AE% E6% BA% 96% E5% 82% 99), aber Java-Option hinzugefügt.

---XX: MaxMetaspaceSize = 256M: Diese Einstellung sichert den Maximalwert des Metaspace von 256 MB und erhöht ihn nicht mehr. Standardmäßig kann es unbegrenzt erweitert werden, daher stelle ich den Maximalwert für alle Fälle ein. ---XshowSettings: vm: Gibt die VM-Einstellungen beim Start aus.

Fargate-Aufgabendefinition

Stellen Sie sicher, dass Sie das Speicher-Hard-Limit in der Container-Definition angeben. Der hier angegebene Wert wird an die Option "--memory" von "Docker Run" übergeben. Geben Sie normalerweise denselben Wert wie den Aufgabenspeicher an.

スクリーンショット 2020-08-27 16.08.00.png

Überprüfen Sie das Aufgabenprotokoll

Zeigen Sie das Fargate-Aufgabenprotokoll an und stellen Sie sicher, dass "Max. Heap Size" Ihren Erwartungen entspricht. In diesem Fall beträgt das harte Limit 1000 MB und die Java-Option lautet "-XX: MaxRAMFraction = 2", sodass 500 MB korrekt sind.

スクリーンショット 2020-08-27 15.39.23.png

Referenz

Recommended Posts

So stellen Sie eine Kotlin (Java) -App auf AWS fargate bereit
So stellen Sie eine einfache Java-Servlet-App auf Heroku bereit
So gelangen Sie in einen Container, der auf AWS Fargate ausgeführt wird
So stellen Sie die Rails-Anwendung in AWS bereit (Artikelzusammenfassung)
Stellen Sie eine Java-Web-App für Heroku bereit
Wie man mit Heroku einsetzt
So stellen Sie Java mit Serverless Framework für AWS Lambda bereit
[Java] Wie man Aufgaben regelmäßig ausführt
So stellen Sie Laravel für CentOS 7 bereit
So erstellen Sie einen Java-Container
So stellen Sie Bootstrap auf Rails bereit
So entwickeln und registrieren Sie eine Sota-App in Java
So erstellen Sie ein Java-Array
So bedienen Sie automatisch einen in Java unter Windows erstellten Bildschirm
So erstellen Sie einen Webserver auf einer EC2-Instanz von AWS
So überprüfen Sie, ob Java auf einem Mac installiert ist
So erstellen Sie eine Java-Kalenderzusammenfassung
Ein Memorandum zur Verwendung von Eclipse
[Einführung in Java] So schreiben Sie ein Java-Programm
Stellen Sie JavaServlet-Apps lokal in Tomcat bereit
So wechseln Sie Java-Versionen auf dem Mac
Wie erstelle ich einen Discord Bot (Java)
So erstellen Sie eine App mit einem Plug-In-Mechanismus [C # und Java]
Stellen Sie Java-Webanwendungen mit maven in Azure bereit
Verwendung des Java-Frameworks mit AWS Lambda! ??
So speichern Sie Bilder auf Heroku in S3 unter AWS
So konvertieren Sie einen Soliditätsvertrag in eine Java-Vertragsklasse
Stellen Sie Rails mit AWS Copilot für ECS Fargate bereit
So erstellen Sie eine Pytorch-Umgebung unter Ubuntu
[Java] Memo zum Schreiben der Quelle
Wie schreibe ich Java String # getBytes in Kotlin?
So stellen Sie ein mit Java erstelltes System (Wicket-Spring-Boot) auf dem Campus-Server bereit
Memo zum Erstellen einer Servlet-Umgebung auf EC2 von AWS
So erstellen Sie eine Java-Umgebung in nur 3 Sekunden
So führen Sie die SpringBoot-App als Dienst aus
Senden Sie einen Job an AWS Batch mit Java (Eclipse)
So springen Sie von Eclipse Java zu einer SQL-Datei
Bereitstellen von einem lokalen Docker-Image auf Heroku
java: Wie schreibe ich eine generische Typliste? [Hinweis]
[Java] Wie man aus Janken rauskommt (entspricht Paiza Rang A)
Führen Sie auf, wie Sie in AWS von Docker zu AKS lernen können
So funktioniert JavaScript auf einer bestimmten Seite
So erstellen Sie einen Daten-URI (base64) in Java
[Java] So erhalten Sie eine Anfrage per HTTP-Kommunikation
Stand April 2018 So installieren Sie Java 8 auf einem Mac
[Java] So schneiden Sie eine Zeichenfolge zeichenweise aus
[Java] So löschen Sie ein bestimmtes Zeichen aus einer Zeichenfolge
So konvertieren Sie A in a und a in A mit logischem Produkt und Summe in Java
So konvertieren Sie eine Datei in ein Byte-Array in Java
So führen Sie Java EE Tutial auf Github unter Eclipse aus