Skip to content

Docker

Airupt ships with a Dockerfile and docker-compose.yml for containerized deployment.

Quick Start with Docker Compose

  1. Clone the repo or copy the docker-compose.yml
  2. Create your config file:
bash
cp config.example.yml ~/.airupt/config.yml
# Edit with your API keys and channel tokens
  1. Start:
bash
docker compose up -d

docker-compose.yml

yaml
services:
  airupt:
    image: ghcr.io/airupt/airupt:latest
    restart: unless-stopped
    volumes:
      - ~/.airupt:/home/airupt/.airupt
    environment:
      - AIRUPT_LLM_API_KEY=${AIRUPT_LLM_API_KEY}
      - AIRUPT_CHANNELS_TELEGRAM_BOT_TOKEN=${TELEGRAM_BOT_TOKEN}
    ports: [] # no ports exposed by default

Keep your secrets in a .env file (never commit it):

bash
# .env
AIRUPT_LLM_API_KEY=sk-...
TELEGRAM_BOT_TOKEN=123456:ABC...

Build from Source

bash
docker build -t airupt .
docker run -d \
  -v ~/.airupt:/home/airupt/.airupt \
  -e AIRUPT_LLM_API_KEY=sk-... \
  airupt

Persistent Data

The volume mount ~/.airupt:/home/airupt/.airupt persists:

  • config.yml
  • Memory store (memory/)
  • Cost data (costs/)
  • Logs (airupt.log)

Without this mount, data is lost when the container stops.

Logs

bash
docker compose logs -f airupt

Updating

bash
docker compose pull
docker compose up -d

Released under the MIT License.