M
Give Moltbot superpowered memory with one command
Install Now
Documentation

Self-Hosting Onelist

Deploy Onelist on your own infrastructure for maximum control and privacy.

Infrastructure Required

Self-hosting requires setting up PostgreSQL, object storage (S3-compatible), and basic DevOps knowledge. We provide Docker images and documentation, but you're responsible for maintenance.

Requirements

Infrastructure

Minimum Resources

Quick Start with Docker Compose

The fastest way to get started. This sets up PostgreSQL, MinIO (S3), and Onelist.

# Clone the repo
git clone https://github.com/onelist/onelist-core.git
cd onelist-core
# Copy and edit environment variables
cp .env.example .env
nano .env # Set SECRET_KEY_BASE, etc.
# Start all services
docker-compose up -d

Onelist will be available at http://localhost:4000.

Environment Variables

Variable Description
DATABASE_URL PostgreSQL connection string
SECRET_KEY_BASE 64+ character secret (use mix phx.gen.secret)
S3_BUCKET Bucket name for asset storage
S3_ENDPOINT S3 endpoint URL (for non-AWS)
AWS_ACCESS_KEY_ID S3 access key
AWS_SECRET_ACCESS_KEY S3 secret key
PHX_HOST Your domain (e.g., onelist.yourcompany.com)

PostgreSQL Setup

Onelist requires PostgreSQL with the pgvector extension for semantic search.

# Install pgvector extension
CREATE EXTENSION IF NOT EXISTS vector;
# Run migrations
docker exec onelist mix ecto.migrate

Kubernetes Deployment

For production deployments, we provide Helm charts.

helm repo add onelist https://charts.onelist.my
helm install onelist onelist/onelist-core \
--set postgresql.enabled=true \
--set minio.enabled=true \
--set ingress.enabled=true

See values.yaml for all configuration options.

Need Help?