Rolling release / server / linux-x64 (push) Has been cancelled
Rolling release / client / win32-arm64 (push) Has been cancelled
Rolling release / server / win32-arm64 (push) Has been cancelled
Rolling release / client / win32-x64 (push) Has been cancelled
Rolling release / server / win32-x64 (push) Has been cancelled
Rolling release / Publish rolling release (push) Has been cancelled
Rolling release / client / darwin-arm64 (push) Has been cancelled
Rolling release / server / darwin-arm64 (push) Has been cancelled
Rolling release / client / darwin-x64 (push) Has been cancelled
Rolling release / server / darwin-x64 (push) Has been cancelled
Rolling release / client / linux-arm64 (push) Has been cancelled
Rolling release / server / linux-arm64 (push) Has been cancelled
Rolling release / client / linux-x64 (push) Has been cancelled
CI / test (push) Has been cancelled
Package peardock-server and peardock-client with bare-pack + bare-build --standalone (hello-pear-bare pattern), embedding the full module graph and native addons. Server uses bare-node-runtime imports plus Docker socket shims; client is a Bare agent with holesail control. Gitea Actions builds multi-host artifacts and publishes a rolling release via RELEASE_TOKEN.
46 lines
1.3 KiB
Desktop File
46 lines
1.3 KiB
Desktop File
[Unit]
|
|
Description=peardock HyperDHT Docker control plane
|
|
Documentation=https://github.com/holepunchto/peardock
|
|
After=docker.service network-online.target
|
|
Wants=network-online.target
|
|
Requires=docker.service
|
|
|
|
[Service]
|
|
Type=simple
|
|
WorkingDirectory=/opt/peardock
|
|
# Prefer the Bare standalone binary (rolling release artifact):
|
|
ExecStart=/opt/peardock/peardock-server
|
|
# Node fallback (source install):
|
|
# ExecStart=/usr/bin/node server/server.js
|
|
ExecReload=/bin/kill -HUP $MAINPID
|
|
Restart=on-failure
|
|
RestartSec=5
|
|
# Health: process must stay up; optional external check via scripts/healthcheck.js
|
|
TimeoutStartSec=30
|
|
TimeoutStopSec=30
|
|
|
|
# Security hardening (adjust paths as needed)
|
|
NoNewPrivileges=true
|
|
PrivateTmp=true
|
|
ProtectSystem=full
|
|
ProtectHome=read-only
|
|
ReadWritePaths=/opt/peardock /var/run/docker.sock
|
|
|
|
# Environment
|
|
Environment=NODE_ENV=production
|
|
Environment=PEARDOCK_HOME=/opt/peardock
|
|
EnvironmentFile=-/opt/peardock/.env
|
|
# Example production knobs (uncomment / set in .env):
|
|
# Environment=PEARDOCK_DEFAULT_ROLE=operator
|
|
# Environment=PEARDOCK_PEER_ALLOWLIST=1
|
|
# Environment=PEARDOCK_BROWSE_ROOTS=/var/lib/docker/volumes
|
|
# Environment=ENABLE_SWARM=0
|
|
# Environment=ENABLE_PLUGINS=0
|
|
|
|
# Run as a dedicated user with docker group access
|
|
User=peardock
|
|
Group=docker
|
|
|
|
[Install]
|
|
WantedBy=multi-user.target
|