added systemd service and env file
This commit is contained in:
parent
86fd4efbb7
commit
5dd813b12a
4 changed files with 73 additions and 0 deletions
|
|
@ -1,2 +1,4 @@
|
||||||
tar: @name@ name=@name@-@version@
|
tar: @name@ name=@name@-@version@
|
||||||
tar: .gear/predownloaded-development name=@name@-development-@version@ base=
|
tar: .gear/predownloaded-development name=@name@-development-@version@ base=
|
||||||
|
copy: @name@.service
|
||||||
|
copy: @name@.env.example
|
||||||
|
|
|
||||||
11
lk-jwt-service.env.example
Normal file
11
lk-jwt-service.env.example
Normal file
|
|
@ -0,0 +1,11 @@
|
||||||
|
# Mandatory
|
||||||
|
LIVEKIT_KEY=YOUR_LIVEKIT_KEY
|
||||||
|
LIVEKIT_SECRET=YOUR_LIVEKIT_SECRET
|
||||||
|
LIVEKIT_URL=wss://example.com
|
||||||
|
# Optional
|
||||||
|
LIVEKIT_FULL_ACCESS_HOMESERVERS=example.com
|
||||||
|
# Bind only to localhost when behind reverse proxy (recommended)
|
||||||
|
LIVEKIT_JWT_BIND=127.0.0.1:8080
|
||||||
|
|
||||||
|
# Never use in production:
|
||||||
|
# LIVEKIT_INSECURE_SKIP_VERIFY_TLS=YES_I_KNOW_WHAT_I_AM_DOING
|
||||||
56
lk-jwt-service.service
Normal file
56
lk-jwt-service.service
Normal file
|
|
@ -0,0 +1,56 @@
|
||||||
|
[Unit]
|
||||||
|
Description=MatrixRTC Authorization Service (lk-jwt-service)
|
||||||
|
Wants=network-online.target
|
||||||
|
After=network-online.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
ExecStart=/usr/bin/lk-jwt-service
|
||||||
|
|
||||||
|
EnvironmentFile=-/etc/lk-jwt-service/lk-jwt-service.env
|
||||||
|
|
||||||
|
# Secrets via systemd credentials (preferred)
|
||||||
|
#LoadCredential=livekit_key:/etc/lk-jwt-service/livekit_key
|
||||||
|
#LoadCredential=livekit_secret:/etc/lk-jwt-service/livekit_secret
|
||||||
|
#Environment=LIVEKIT_KEY_FROM_FILE=%d/livekit_key
|
||||||
|
#Environment=LIVEKIT_SECRET_FROM_FILE=%d/livekit_secret
|
||||||
|
|
||||||
|
# --- Hardening ---
|
||||||
|
DynamicUser=yes
|
||||||
|
NoNewPrivileges=yes
|
||||||
|
|
||||||
|
PrivateTmp=yes
|
||||||
|
PrivateDevices=yes
|
||||||
|
ProtectSystem=strict
|
||||||
|
ProtectHome=yes
|
||||||
|
|
||||||
|
ProtectControlGroups=yes
|
||||||
|
ProtectKernelTunables=yes
|
||||||
|
ProtectKernelModules=yes
|
||||||
|
ProtectKernelLogs=yes
|
||||||
|
ProtectClock=yes
|
||||||
|
ProtectHostname=yes
|
||||||
|
|
||||||
|
ProtectProc=invisible
|
||||||
|
ProcSubset=pid
|
||||||
|
LockPersonality=yes
|
||||||
|
MemoryDenyWriteExecute=yes
|
||||||
|
RestrictSUIDSGID=yes
|
||||||
|
RestrictRealtime=yes
|
||||||
|
RestrictNamespaces=yes
|
||||||
|
SystemCallArchitectures=native
|
||||||
|
|
||||||
|
CapabilityBoundingSet=
|
||||||
|
AmbientCapabilities=
|
||||||
|
KeyringMode=private
|
||||||
|
RemoveIPC=yes
|
||||||
|
RestrictAddressFamilies=AF_UNIX AF_INET AF_INET6
|
||||||
|
|
||||||
|
# Reliability
|
||||||
|
Restart=on-failure
|
||||||
|
RestartSec=2s
|
||||||
|
TimeoutStartSec=30s
|
||||||
|
TimeoutStopSec=30s
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
|
|
@ -10,6 +10,8 @@ VCS: https://github.com/element-hq/lk-jwt-service
|
||||||
|
|
||||||
Source: %name-%version.tar
|
Source: %name-%version.tar
|
||||||
Source1: %name-development-%version.tar
|
Source1: %name-development-%version.tar
|
||||||
|
Source2: %name.service
|
||||||
|
Source3: %name.env
|
||||||
|
|
||||||
BuildRequires: golang >= 1.23
|
BuildRequires: golang >= 1.23
|
||||||
Requires: ca-certificates
|
Requires: ca-certificates
|
||||||
|
|
@ -36,6 +38,8 @@ go test -mod=vendor ./...
|
||||||
|
|
||||||
%install
|
%install
|
||||||
install -Dpm0755 %{name} %{buildroot}%{_bindir}/%{name}
|
install -Dpm0755 %{name} %{buildroot}%{_bindir}/%{name}
|
||||||
|
install %SOURCE2 %{buildroot}%{_etcdir}/systemd/system/%name.service
|
||||||
|
install %SOURCE3 %{buildroot}%{_etcdir}/%{name}/lk-jwt-service.env
|
||||||
|
|
||||||
%files
|
%files
|
||||||
%doc README.md LICENSE LICENSE-COMMERCIAL
|
%doc README.md LICENSE LICENSE-COMMERCIAL
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue