Setting Environment Variables for a systemd Service: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
=Internal=
=Internal=
* [[Systemd_Concepts#Environment|systemd Concepts]]
* [[Systemd_Concepts#Environment|systemd Concepts]]
* [[Systemd_Operations#Setting_Environment_Variables_for_a_systemd_Service|systemd Operations]]


=Overview=
=Overview=
Line 15: Line 16:


=Configuration File Content=
=Configuration File Content=
 
<syntaxhighlight lang='bash'>
<pre>
[Service]
[Service]
Environment="JAVA_HOME=/opt/java"
Environment="JAVA_HOME=/opt/java"
Environment="JBOSS_HOME=/opt/jboss"
Environment="JBOSS_HOME=/opt/jboss"
</pre>
</syntaxhighlight>

Latest revision as of 22:22, 19 August 2023

Internal

Overview

This document describes the procedure of configuring a systemd service by injecting custom environment variables into its environment. The document assumes we're configuring a service named "myservice".

Create the Configuration Directory and the Configuration File

Create a directory /etc/systemd/system/myservice.service.d. Inside that directory create a .conf file. Multiple files are allowed. These files contains configuration overrides for any part of the unit shipped by the distribution.

A file that contains environment variables could be named env.conf. myservice.conf is also an acceptable name.


Note that if the configuration directory exists and is empty, the service will be disabled.

Configuration File Content

[Service]
Environment="JAVA_HOME=/opt/java"
Environment="JBOSS_HOME=/opt/jboss"