This guide uses Docker Compose to run Spoolman.
For Docker installation, see Docker.
Create a directory for Spoolman and set up the service:
mkdir spoolman && cd spoolman
Create a docker-compose.yml file:
cat > docker-compose.yml << EOF
version: '3.8'
services:
spoolman:
image: ghcr.io/donkie/spoolman:latest
container_name: spoolman
restart: unless-stopped
ports:
- "8000:8000"
volumes:
- ./data:/data
environment:
- SPOOLMAN_DATABASE_URL=sqlite:////data/spoolman.sqlite3
- SPOOLMAN_HOST=0.0.0.0
- SPOOLMAN_PORT=8000
EOF
Start the service:
docker compose up -d
If you prefer to use the source code:
git clone https://github.com/Donkie/Spoolman spoolman
cd spoolman
docker compose up -d
Choose the appropriate database for your needs:
environment:
- SPOOLMAN_DATABASE_URL=sqlite:////data/spoolman.sqlite3
version: '3.8'
services:
postgres:
image: postgres:15-alpine
restart: unless-stopped
environment:
POSTGRES_DB: spoolman
POSTGRES_USER: spoolman
POSTGRES_PASSWORD: your_secure_password
volumes:
- postgres_data:/var/lib/postgresql/data
spoolman:
image: ghcr.io/donkie/spoolman:latest
container_name: spoolman
restart: unless-stopped
ports:
- "8000:8000"
depends_on:
- postgres
environment:
- SPOOLMAN_DATABASE_URL=postgresql://spoolman:your_secure_password@postgres:5432/spoolman
volumes:
postgres_data:
ghcr.io/donkie/spoolman:latest (currently v0.23.1)ghcr.io/donkie/spoolman:v0.23.1 for version pinningghcr.io/donkie/spoolman:edge for latest features (not recommended for production)Any questions?
Feel free to contact us. Find all contact information on our contact page.