English | Français | Español | Deutsch | 日本語 | 简体中文 | 繁體中文 | Português | Русский | العربية | हिन्दी | Bahasa Indonesia | Italiano | 한국어 | Türkçe | Tiếng Việt | ไทย
Self-hosted e-commerce platform. One command to install.
Website • Documentation • Community • Live Demos
curl -fsSL https://spwig.com/install.sh | sudo bashThat's it. The installer handles everything: Docker setup, database, SSL certificates, and service configuration.
If you have a setup token from your purchase:
curl -fsSL https://spwig.com/install.sh | sudo bash -s -- --token=YOUR_TOKENSpwig runs as a set of Docker containers on your server:
| Service | Purpose |
|---|---|
| Shop | Django application server |
| PostgreSQL | Database |
| Redis | Caching and sessions |
| MinIO | Media file storage (S3-compatible) |
| Nginx | Reverse proxy with SSL |
| Celery | Background task workers |
| Translator | AI-powered content translation |
| Upgrader | Automatic component updates |
| Resource | Requirement |
|---|---|
| OS | Ubuntu 22.04+, Debian 12+, or any Linux with Docker support |
| CPU | 2 cores |
| RAM | 4 GB |
| Disk | 10 GB free |
| Access | Root / sudo |
| Resource | Recommendation |
|---|---|
| CPU | 4 cores |
| RAM | 4 GB+ |
| Disk | 40 GB+ SSD |
| Network | Public IP with ports 80 and 443 open |
The installer checks for and can auto-install:
- Docker (20.10+) and Docker Compose (v2)
curl,openssl,tar,gzip(present on most systems)
The installer walks you through each step:
curl -fsSL https://spwig.com/install.sh | sudo bashcurl -fsSL https://spwig.com/install.sh | sudo bash -s -- \
--domain=shop.example.com \
--email=admin@example.comcurl -fsSL https://spwig.com/install.sh | sudo bash -s -- \
--domain=shop.example.com \
--email=admin@example.com \
--non-interactivecurl -fsSL https://spwig.com/install.sh | sudo bash -s -- --dry-runcurl -fsSL https://spwig.com/install.sh -o install.sh
less install.sh # review the script
sudo bash install.shUsage: install.sh [OPTIONS]
Options:
--token=JWT Setup token from purchase email
--domain=DOMAIN Domain name for your store
--email=EMAIL Admin email (used for SSL and admin account)
--no-domain Install without a domain (access via IP)
--mode=MODE Force mode: standalone, sidecar, or local
--port=PORT Override HTTP port (default: 80)
--ssl-port=PORT Override HTTPS port (default: 443)
--instance-id=ID Unique ID for multi-instance isolation
--skip-ssl Skip SSL certificate setup
--version=VER Install a specific Spwig version
--dry-run Preview the installation plan
--yes, -y Accept all prompts automatically
--non-interactive No prompts at all (for automation)
--help, -h Show help
The installer auto-detects the best mode for your environment:
Ports 80 and 443 are free. Spwig takes full control of web traffic with its own Nginx and SSL.
An existing web server (Nginx, Apache, Caddy) is detected. Spwig runs on alternate ports and provides a proxy config for your existing server.
No public IP detected. Runs in development mode with DEBUG=true and a self-signed certificate at spwig.local.
| Admin URL | https://your-domain/admin/ |
| Username | admin |
| Password | Generated during setup |
The installer generates a unique password and displays it once at the end of installation. Make sure to save it before closing the terminal.
On first login, the Setup Wizard guides you through:
- Store name and URL
- Contact information
- Currency and locale
- Payment methods
Your store starts in maintenance mode. Visitors see a "Coming Soon" page until you're ready:
cd /opt/spwig && ./go-live.shInstalled without a domain? Add one anytime:
cd /opt/spwig && ./configure-domain.shDeploy with a single click on supported platforms:
- Akamai / Linode — Available on the Linode Marketplace
- DigitalOcean — Available as a 1-Click App
cd /opt/spwig
# View logs
docker compose logs -f shop
# Check service status
docker compose ps
# Restart all services
docker compose restart
# Stop everything
docker compose down
# Start everything
docker compose up -d
# Update to latest version
docker compose pull && docker compose up -dcd /opt/spwig
docker compose down -v # stop and remove containers + volumes
sudo rm -rf /opt/spwig # remove installation directoryThis permanently deletes all data including your database and media files. Back up first if needed.
Join the Spwig Developer Program to get a free developer license, early access to new features, and API documentation for building integrations.
- Free developer license — full platform access for development and testing
- API & webhook docs — build custom integrations, themes, and components
- Developer community — connect with other Spwig developers
- Documentation: docs.spwig.com
- Community Forum: community.spwig.com
- Email: support@spwig.com
Built by Spwig