Self-hosted URL shortener. Single container, zero configuration.
- PostgreSQL + Next.js in one container
- AES-256-GCM encryption at rest
- Auto-generated DB password + encryption key
- Just works
git clone https://github.com/FlexURL-link/docker.git && cd docker
docker compose up -dDone. App at http://localhost:3000.
docker build -t flexurl .
docker run -d --name flexurl \
-p 3000:3000 \
-v flexurl-data:/app/data \
flexurl| Variable | Default | Description |
|---|---|---|
NEXT_PUBLIC_BASE_URL |
http://localhost:3000 |
Public URL shown in the UI |
NEXT_PUBLIC_API_URL |
(empty = same origin) | API base URL for the frontend |
ALLOWED_ORIGIN |
* |
CORS origin for the create API |
DB password and encryption key are auto-generated on first start and stored in the flexurl-data volume. Nothing to configure.
docker compose up -d --builddocker build -t flexurl .
docker stop flexurl && docker rm flexurl
docker run -d --name flexurl -p 3000:3000 -v flexurl-data:/app/data flexurlData (DB + keys) is preserved in the volume.
# Compose
docker compose down
# Run
docker stop flexurlData preserved. Add -v to delete it.
MIT