blob: 95fe039d2faede08ca352a5db2239235a58d59da (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
|
[Unit]
Description=OCI Distribution Registry
Documentation=https://zotregistry.dev/
After=network.target auditd.service local-fs.target
[Service]
AmbientCapabilities=CAP_NET_BIND_SERVICE CAP_SYS_NICE
CapabilityBoundingSet=CAP_NET_BIND_SERVICE CAP_SYS_NICE
DevicePolicy=closed
EnvironmentFile=-/etc/default/zot
ExecReload=/usr/bin/zot verify /etc/zot/config.json
ExecReload=/bin/kill -HUP $MAINPID
ExecStart=/usr/bin/zot serve /etc/zot/config.json
ExecStartPre=/usr/bin/zot verify /etc/zot/config.json
Group=zot
LockPersonality=yes
LimitNOFILE=500000
MemoryDenyWriteExecute=yes
MemoryMax=50%
MemorySwapMax=50%
NoNewPrivileges=true
PermissionsStartOnly=true
PrivateDevices=yes
PrivateTmp=true
#PrivateUsers=yes
ProcSubset=pid
ProtectClock=true
ProtectControlGroups=true
ProtectHome=yes
ProtectHostname=true
ProtectKernelLogs=true
ProtectKernelModules=true
ProtectKernelTunables=true
ProtectProc=invisible
ProtectSystem=strict
ReadWritePaths=/var/lib/zot
RemoveIPC=true
Restart=on-failure
#RestrictAddressFamilies=AF_INET AF_INET6 AF_UNIX
RestrictNamespaces=true
RestrictRealtime=true
RestrictSUIDSGID=true
SecureBits=keep-caps
SyslogIdentifier=zot
SystemCallArchitectures=native
SystemCallFilter=~@clock @cpu-emulation @debug @module @mount @obsolete @raw-io @reboot @resources @swap
Type=simple
UMask=0026
User=zot
WorkingDirectory=/var/lib/zot
[Install]
WantedBy=multi-user.target
|