Dashboard Installation
Install the Portabase management interface via CLI or Docker.
The Portabase Dashboard is the central interface that allows you to manage your agents, configure your backups, and visualize the state of your infrastructure.
You have two methods to install it:
- Via CLI (Automatic): Ideal for getting started quickly locally or on a VPS.
- Via Docker Compose (Manual): Recommended for advanced production environments or GitOps.
The CLI takes care of everything: it downloads templates, generates encryption secrets (PROJECT_SECRET), configures the internal database, and launches the containers.
Create the Dashboard
Run the following command. This will create a folder containing the configuration.
# Syntax: portabase dashboard <folder-name>
portabase dashboard my-dashboardBy default, the interface will be on port 8887. You can change it with the --port option:
portabase dashboard my-dashboard --port 3000Start the service
If you didn't use the --start option during creation, start the service manually:
portabase start my-dashboardAccess the interface
Open your browser: http://localhost:8887 (or the chosen port).
If you don't want to use the CLI, you can deploy the stack manually.
File structure
Create a folder and place two files in it: docker-compose.yml and .env.
mkdir portabase-dashboard && cd portabase-dashboardDocker configuration
mkdir portabase-dashboard && cd portabase-dashboardDocker configuration
name: portabase-dashboard
services:
portabase:
container_name: portabase-app
image: solucetechnologies/portabase:latest
restart: always
env_file: .env
ports:
- "${PORT:-8887}:3000"
volumes:
- portabase-private:/app/private
depends_on:
db:
condition: service_healthy
networks:
- default
db:
container_name: portabase-pg
image: postgres:17-alpine
restart: always
volumes:
- postgres-data:/var/lib/postgresql/data
environment:
- POSTGRES_DB=${POSTGRES_DB}
- POSTGRES_USER=${POSTGRES_USER}
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
healthcheck:
test: ["CMD-SHELL", "pg_isready -U ${POSTGRES_USER} -d ${POSTGRES_DB}"]
interval: 10s
timeout: 5s
retries: 5
networks:
- default
volumes:
postgres-data:
portabase-private:Environment variables
Create the .env file. Warning, you must generate passwords and secrets yourself.
# --- App Configuration ---
PORT=8887
TIME_ZONE=Europe/Paris
PROJECT_NAME=portabase-dashboard
PROJECT_URL=http://localhost:8887
# ⚠️ GENERATE A STRONG SECRET (e.g., openssl rand -hex 32)
# This secret is used to encrypt communications with agents.
PROJECT_SECRET=change_me_please_generate_a_secure_hex_token
# --- Internal Database Configuration ---
POSTGRES_DB=portabase
POSTGRES_USER=portabase
POSTGRES_PASSWORD=change_me_secure_db_password
POSTGRES_HOST=db
PG_PORT=5432
# Connection URL (do not modify the structure, just change the password)
DATABASE_URL=postgresql://portabase:change_me_secure_db_password@db:5432/portabase?schema=publicStartup
docker compose up -dDaily management (CLI)
The CLI offers convenient shortcuts to manage your dashboard's lifecycle without having to type complex Docker commands.
| Action | Command | Description |
|---|---|---|
| Start | portabase start <path> | Launches containers in the background (up -d). |
| Stop | portabase stop <path> | Stops containers cleanly. |
| Restart | portabase restart <path> | Restarts the complete stack. |
| Logs | portabase logs <path> | Displays logs in real time (-f option enabled by default). |
| Uninstall | portabase uninstall <path> | ⚠️ Removes containers and data volumes. |