Teach the installer to detect and configure Docker or Podman.
Release rolling / release (push) Successful in 7m55s
Release rolling / release (push) Successful in 7m55s
Auto-select the engine, set socket group permissions (including Debian podman.socket drop-ins), write PEARDOCK_ENGINE into .env, and generate a matching systemd unit for the chosen runtime.
This commit is contained in:
+13
-8
@@ -1,11 +1,12 @@
|
||||
[Unit]
|
||||
Description=peardock HyperDHT Docker control plane
|
||||
Description=peardock HyperDHT container control plane
|
||||
Documentation=https://git.ssh.surf/snxraven/peardock
|
||||
After=network-online.target
|
||||
Wants=network-online.target
|
||||
# Soft-depend on Docker / Podman (either socket is enough)
|
||||
# Soft-depend on Docker and/or Podman (installer rewrites After=/Wants= for the selected engine)
|
||||
Wants=docker.service
|
||||
# Rootful Podman API (optional; ignore if unit missing)
|
||||
# Rootful Podman API — uncomment or let install.sh set this when PEARDOCK_ENGINE=podman:
|
||||
# After=podman.socket
|
||||
# Wants=podman.socket
|
||||
|
||||
[Service]
|
||||
@@ -24,22 +25,26 @@ NoNewPrivileges=true
|
||||
PrivateTmp=true
|
||||
|
||||
User=peardock
|
||||
# install.sh sets Group/SupplementaryGroups to the socket group (docker or podman)
|
||||
Group=docker
|
||||
SupplementaryGroups=docker
|
||||
|
||||
Environment=NODE_ENV=production
|
||||
EnvironmentFile=-/opt/peardock/.env
|
||||
# Installer also writes PEARDOCK_ENGINE / DOCKER_HOST into .env and may set:
|
||||
# Environment=PEARDOCK_ENGINE=podman
|
||||
# Environment=DOCKER_HOST=unix:///run/podman/podman.sock
|
||||
# Environment=CONTAINER_HOST=unix:///run/podman/podman.sock
|
||||
# Environment=DOCKER_API_VERSION=v1.41
|
||||
#
|
||||
# Example production knobs (prefer .env):
|
||||
# Environment=PEARDOCK_DEFAULT_ROLE=operator
|
||||
# Environment=PEARDOCK_PEER_ALLOWLIST=1
|
||||
# Environment=PEARDOCK_ENGINE=podman
|
||||
# Environment=DOCKER_HOST=unix:///run/podman/podman.sock
|
||||
# Swarm + Holesail are on by default (Docker); Swarm is always off on Podman
|
||||
# Environment=ENABLE_SWARM=0
|
||||
# Environment=ENABLE_HOLESAIL=0
|
||||
# Environment=DOCKER_API_VERSION=v1.41
|
||||
|
||||
ReadWritePaths=/opt/peardock
|
||||
# State dir + common engine sockets (Docker + Podman rootful)
|
||||
ReadWritePaths=/opt/peardock /var/run/docker.sock /run/docker.sock /run/podman/podman.sock /var/run/podman/podman.sock
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
|
||||
Reference in New Issue
Block a user