Framework Francoforte, Germania
Collega il tuo repository e Nodion compila la tua app Spring Boot con il suo wrapper Maven o Gradle, salta i test e avvia il jar eseguibile su una JRE Temurin. server.port arriva dalla variabile PORT impostata da Nodion, quindi non devi configurare tu la porta. L'app gira a Francoforte, accanto a un database PostgreSQL gestito, se ti serve.
pom.xml o build.gradle(.kts)java -Dserver.port=$PORT -jar con il jar di Bootmvnw o gradlew. Nodion esegue ./mvnw -B -DskipTests clean package o ./gradlew build -x test --no-daemon e avvia il jar più grande in target/ o build/libs/, saltando il jar -plain di Gradle. Gradle senza wrapper fallisce; Maven senza wrapper viene compilato con il Maven di Nodion. La versione di Java arriva da system.properties (predefinita 21), non dalla toolchain del tuo file di build. system.properties java.runtime.version=21 / restituisce 404. Aggiungi Actuator (in Gradle: implementation 'org.springframework.boot:spring-boot-starter-actuator') e imposta /actuator/health come percorso dell'health check nelle impostazioni dell'app. pom.xml <dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency> DATABASE_URL, che è un URL postgres://. In application.properties fai riferimento a variabili tue e aggiungi il driver PostgreSQL org.postgresql:postgresql come dipendenza di runtime. Nodion valorizza le variabili quando colleghi il database nel passo successivo. application.properties spring.datasource.url=jdbc:postgresql://${DB_HOST}:${DB_PORT}/${DB_NAME}
spring.datasource.username=${DB_USER}
spring.datasource.password=${DB_PASSWORD} DB_HOST, DB_PORT, DB_NAME, DB_USER e DB_PASSWORD. Le variabili arrivano con il deploy successivo. JAVA_TOOL_OPTIONS=-XX:MaxRAMPercentage=80.0, quindi l'heap può usare gran parte della memoria dell'istanza. Imposta JAVA_TOOL_OPTIONS per sostituirlo, oppure JAVA_OPTS per aggiungere flag al comando di avvio./actuator/health senza login. Con un 401 o 403 sul percorso dell'health check la release non diventa mai pronta e dopo 10 minuti viene interrotta, mentre la versione vecchia continua a rispondere.target/ e build/libs/ della base directory. Se il jar di Boot viene generato nella cartella di un modulo, avvialo con una riga del Procfile e passa tu la porta, per esempio web: java -Dserver.port=$PORT -jar app/build/libs/app.jar.DATABASE_URL, REDIS_URL o CLICKHOUSE_URL. release: del Procfile viene eseguita a ogni nuova build. Le app con Dockerfile, così come i redeploy e i rollback a un'immagine precedente, usano un comando di release impostato sull'app stessa, che ha anche la precedenza sulla riga del Procfile. Nei siti statici, la fase di release gira in un'immagine che contiene solo i file generati dalla build. Di solito l'health check chiama /, che non ha un mapping e risponde 404, oppure Spring Security risponde 401. Aggiungi Actuator, imposta /actuator/health come percorso dell'health check e rendilo raggiungibile senza login. Anche una JVM che esaurisce la memoria durante l'avvio non diventa mai pronta; assegnale 1 GB o più.
No. Un progetto Gradle ha bisogno di un gradlew nel repository, insieme alla cartella gradle/wrapper; esegui una volta gradle wrapper e fai il commit del risultato. I progetti Maven si compilano anche senza wrapper, con il Maven di Nodion.
Sì. I progetti Kotlin creati con Spring Initializr si compilano con lo stesso wrapper Maven o Gradle, e build.gradle.kts viene riconosciuto come build.gradle.
Nella regione EU Central a Francoforte, in Germania. La build, il registry, l'app e i suoi database, volumi, bucket, log e metriche restano in quella regione. L'API e il control plane di Nodion sono ospitati in Germania. Nodion GmbH ha sede a Stoccarda.
Nodion offre le basi per farlo: Nodion GmbH ha sede a Stoccarda, in Germania; nella regione di Francoforte l'app, i suoi database e i volumi girano in Germania; puoi sottoscrivere il DPA (accordo sul trattamento dei dati, art. 28 GDPR) in formato elettronico nella dashboard. La conformità del tuo utilizzo dipende anche da come configuri e usi l'app.
Un'istanza dell'app costa da 1 EUR al mese. La configurazione mostrata nel riquadro costa 5.50 EUR al mese: App 4 EUR, PostgreSQL 1.50 EUR. I prezzi sono IVA esclusa e la fatturazione è al secondo. Puoi scegliere dimensioni più grandi o più istanze quando ti servono.
Sì. Ogni app riceve un hostname predefinito con HTTPS. Aggiungi il tuo dominio nella scheda Domains dell'app; il certificato TLS viene emesso e rinnovato automaticamente.
Fino a 15 € di credito quando ti registri.
oppure con l'email
Novità sul prodotto, niente spam. Puoi annullare l'iscrizione quando vuoi.
Iscrizione completata.