@@ -8,15 +8,15 @@ date: 2025
88
99# NAME
1010
11- openshell-gateway.env - OpenShell gateway environment configuration
11+ openshell-gateway.env - legacy OpenShell gateway environment overrides
1212
1313# DESCRIPTION
1414
15- The ** openshell-gateway.env** file contains environment variables that
16- configure the OpenShell gateway server when running as a systemd user
17- service. It is generated automatically on first start by
18- ** init-gateway-env.sh ** and is not overwritten on subsequent starts or
19- package upgrades .
15+ The ** openshell-gateway.env** file contains optional environment
16+ overrides for the OpenShell gateway server when running as a systemd
17+ user service. Packaged defaults live in the gateway TOML file; this
18+ environment file is kept for compatibility and for settings that must
19+ remain outside TOML, such as ** OPENSHELL_DB_URL ** .
2020
2121The file uses the standard systemd ** EnvironmentFile** format: one
2222** KEY=VALUE** pair per line. Lines beginning with ** #** are comments.
@@ -33,62 +33,64 @@ The systemd user unit reads it via:
3333 EnvironmentFile=-~/.config/openshell/gateway.env
3434
3535The ** -** prefix means the service starts normally if the file does not
36- exist (the unit has built-in defaults for all required settings) .
36+ exist.
3737
3838# VARIABLES
3939
4040## Gateway
4141
42- ** OPENSHELL_BIND_ADDRESS** (default: 0.0.0.0)
43- : IP address to bind all listeners to. The RPM default of ** 0.0.0.0**
44- exposes the gateway on all network interfaces; mTLS must remain
45- enabled to prevent unauthenticated access. Set to ** 127.0.0.1** for
46- local-only access.
42+ ** OPENSHELL_BIND_ADDRESS**
43+ : IP address to bind all listeners to. Overrides
44+ ` bind_address ` in the TOML file.
4745
48- ** OPENSHELL_SERVER_PORT** (default: 8080)
49- : Port for the multiplexed gRPC/HTTP API.
46+ ** OPENSHELL_SERVER_PORT**
47+ : Port for the multiplexed gRPC/HTTP API. Overrides the port in the
48+ TOML ` bind_address ` .
5049
51- ** OPENSHELL_HEALTH_PORT** (default: 0)
50+ ** OPENSHELL_HEALTH_PORT**
5251: Port for unauthenticated health endpoints (/healthz, /readyz).
5352 Set to a non-zero value to enable a dedicated health listener.
5453
55- ** OPENSHELL_METRICS_PORT** (default: 0)
54+ ** OPENSHELL_METRICS_PORT**
5655: Port for Prometheus metrics endpoint (/metrics). Set to a
5756 non-zero value to enable a dedicated metrics listener.
5857
59- ** OPENSHELL_LOG_LEVEL** (default: info)
58+ ** OPENSHELL_LOG_LEVEL**
6059: Log verbosity: ** trace** , ** debug** , ** info** , ** warn** , ** error** .
6160
62- ** OPENSHELL_DRIVERS** (default: podman)
61+ ** OPENSHELL_DRIVERS**
6362: Compute driver for sandbox management. Options: ** podman** ,
64- ** docker** , ** kubernetes** . The RPM unit defaults to ** podman** .
63+ ** docker** , ** kubernetes** , ** vm** . Overrides ` compute_drivers ` in
64+ the TOML file.
6565
66- ** OPENSHELL_DB_URL** (default: sqlite://$XDG_STATE_HOME/openshell/gateway.db)
67- : SQLite database URL for gateway state persistence.
66+ ** OPENSHELL_DB_URL**
67+ : SQLite database URL for gateway state persistence. The gateway
68+ rejects ` database_url ` in TOML, so packages pass this value through
69+ ** --db-url** when it is set.
6870
6971## TLS
7072
71- ** OPENSHELL_TLS_CERT** (default: auto-generated path)
73+ ** OPENSHELL_TLS_CERT**
7274: Path to server TLS certificate.
7375
74- ** OPENSHELL_TLS_KEY** (default: auto-generated path)
76+ ** OPENSHELL_TLS_KEY**
7577: Path to server TLS private key.
7678
77- ** OPENSHELL_TLS_CLIENT_CA** (default: auto-generated path)
79+ ** OPENSHELL_TLS_CLIENT_CA**
7880: Path to CA certificate for client certificate verification. When
7981 set without ** OPENSHELL_OIDC_ISSUER** , mTLS is required. When both
8082 are set, callers may authenticate via Bearer token or client
8183 certificate.
8284
83- ** OPENSHELL_DISABLE_TLS** (default: unset)
85+ ** OPENSHELL_DISABLE_TLS**
8486: Set to ** true** to disable TLS entirely and listen on plaintext
85- HTTP. Not recommended for production. When the bind address is
86- ** 0.0.0.0 ** (the RPM default) , disabling TLS exposes the API to the
87- entire network without authentication. Restrict
87+ HTTP. Not recommended for production. When the bind address is a
88+ public interface , disabling TLS exposes the API to the network
89+ without authentication. Restrict
8890 ** OPENSHELL_BIND_ADDRESS** to ** 127.0.0.1** or place the gateway
8991 behind a TLS-terminating reverse proxy.
9092
91- ** OPENSHELL_SERVER_SAN** (default: unset)
93+ ** OPENSHELL_SERVER_SAN**
9294: Comma-separated SANs configured on the gateway server certificate.
9395 Wildcard DNS SANs also enable sandbox service URLs under that
9496 domain.
0 commit comments