Self-hosting
Run Andesine on your own server with Docker Compose.
Andesine is open source. You can run it on your own server with Docker Compose. A self-hosted instance has all features of the Pro plan, no billing, and sends no analytics.
Requirements
A server with Docker and Docker Compose.
An email service: Resend or any SMTP server. Andesine sends sign-in codes and invitations by email.
An S3-compatible bucket for images, such as AWS S3 or Cloudflare R2. Without it, image uploads are off.
Optional: an OpenAI API key, or a key of another OpenAI-compatible API, for semantic search, AI answers, and image analysis.
Run Andesine
Get the code
Clone the repository:
git clone https://github.com/vriteio/andesine.git, and open its folder.Configure
Copy
.env.exampleto.env, and set the values in the next section.Start
Run
docker compose up -d. Compose builds the images, starts PostgreSQL, Redis, Typesense, and the worker, and runs the database migrations.Sign up
Open the app address and create your account and workspace.
The web app listens on port 3000, and the API on port 3333.
Required settings
Setting | Value |
|---|---|
| The host of the app, such as |
| The host of the API, such as |
|
|
| The domain of the sign-in cookies, such as |
| A random secret. Create it with |
| Keys that encrypt stored secrets, as JSON: |
| The sender of emails |
| The email service |
| A random secret for search |
Optional settings
Settings | Turn on |
|---|---|
| Image uploads |
| Semantic search, AI answers, and image analysis |
| Sign-in with Google and GitHub |
| Extensions from a registry, such as |
| How many days automatic versions are kept; the default is 30 |
| The maximum image size |
To show the Google and GitHub sign-in buttons, also set PUBLIC_GOOGLE_AUTH_ENABLED=true and PUBLIC_GITHUB_AUTH_ENABLED=true for the web app. These are build arguments, like the other PUBLIC_* values. Without them, members sign in with email codes and passkeys.
.env.example describes all settings. Set PUBLIC_* values before you build, because they are built into the web app.
HTTPS
Put a reverse proxy, such as Caddy or nginx, in front of the app and the API, and serve both over HTTPS. Set TRUST_PROXY to the address of the proxy, so that the API sees the real addresses of visitors.
Do not open the ports of PostgreSQL, Redis, and Typesense to the internet. Block them with a firewall.
Use the CLI and the SDK
Point the CLI and the SDK to your API:
For AI apps, the MCP server is at https://<your API host>/mcp. Apps that connect from their own servers, such as Claude and ChatGPT, need the API on a public HTTPS address.
Update
The migrate service updates the database before the API starts. Back up the database before you update.