sp setup
Deploy your full ServicePlus stack for the first time.
Usage
Optional flags — pin specific versions
By default, ServicePlus auto-detects and installs the latest stable version of Mautic and MySQL. If you need a specific version (e.g. to match an existing deployment or avoid a known issue in a newer release), pass it explicitly:
The version tag you provide is validated against Docker Hub before setup continues. If the tag does not exist, the CLI will warn you and let you choose a valid one. The resolved version is stored in your encrypted config so future commands stay consistent.
What it does
sp setup is the main deployment command. It guides you through an interactive wizard that provisions your entire stack from scratch.
Setup wizard steps
- License verification — validates your serial key online
- Project name — short identifier used for container naming
- Domain — your base domain (subdomains are auto-configured)
- Admin email — for the Mautic admin account and Let's Encrypt SSL
- Master password — encrypts your local configuration file
- Security question & answer — used for password recovery only
Store your master password and security answer offline. They cannot be recovered through support. If lost, you will need to run
sp cleanup and set up again.What setup provisions automatically
- Docker and Docker Compose (if not present)
- MySQL database container
- Mautic 6 container with full configuration
- Apache reverse proxy with virtual hosts
- Let's Encrypt SSL certificates via Certbot
- ServicePlus plugin bundle injection
- GeoIP automatic weekly update cron
- Encrypted configuration stored at
~/.serviceplus/config.enc
Setup typically takes 3–8 minutes on a fresh server with a good internet connection.
After setup
Best practices
- Run setup as root or a user with sudo access
- Make sure DNS is already pointed at your server before starting
- Do not interrupt setup midway — if it fails, run
sp cleanupfirst, then retry