Improve systemd services
[lgpl/argeo-commons.git] / sdk / deploy / argeo-init / usr / lib / systemd / system / argeo@.service
index 8b7f969ec5c825c86c9b94ed1bc5e6fedb785758..1bdf8c8277c9e5eafcadf8b202e2f00c01b734e9 100644 (file)
@@ -1,6 +1,6 @@
 [Unit]
 Description=Argeo node %I
-After=network.target
+After=network-online.target
 Wants=postgresql.service
 
 [Service]
@@ -11,21 +11,31 @@ ConfigurationDirectory=argeo.d/%I
 CacheDirectory=argeo.d/%I
 WorkingDirectory=/var/lib/argeo.d/%I
 
-ExecStart=/usr/lib/jvm/java-17-openjdk-amd64/bin/java \
+Environment=JVM=java
+Environment=JVM_OPTS=
+
+ExecStart=${JVM} ${JVM_OPTS} \
 -Dosgi.configuration.cascaded=true \
 -Dosgi.sharedConfiguration.area=/etc/argeo.d/%I/ \
 -Dosgi.sharedConfiguration.area.readOnly=true \
--Dosgi.configuration.area=/var/lib/argeo.d/%I/state/ \
--Dosgi.instance.area=/var/lib/argeo.d/%I/data/ \
--Dargeo.node.repo.indexesBase=/var/cache/argeo.d/%I/indexes \
+-Dosgi.configuration.area=${STATE_DIRECTORY}/state/ \
+-Dosgi.instance.area=${STATE_DIRECTORY}/data/ \
+-Dargeo.node.repo.indexesBase=${CACHE_DIRECTORY}/indexes \
 -Declipse.ignoreApp=true \
 -Dosgi.noShutdown=true \
 -Dorg.eclipse.equinox.http.jetty.autostart=false \
 @/etc/argeo.d/jvm.args \
-@/etc/argeo.d/%I/jvm.args \
+@${CONFIGURATION_DIRECTORY}/jvm.args \
 @/usr/share/argeo/jvm.args
+
 # Exit codes of the JVM when SIGTERM or SIGINT have been caught:
 SuccessExitStatus=143 130
 
+CPUAccounting=true
+MemoryAccounting=true
+TasksAccounting=true
+IOAccounting=true
+IPAccounting=true
+
 [Install]
 WantedBy=multi-user.target