Português
Começar
← Todos os templates

Faça o deploy de OpenViking no Pethost com um clique

Um banco de contexto para agentes de IA: memória, recursos e skills num só lugar

O que acontece

  1. Você entra no Pethost ou cria uma conta, com uma passkey, GitHub ou Google.
  2. Ainda não tem máquina? Você escolhe um plano, e nós preparamos uma para você. O link espera no seu navegador até ela ficar pronta.
  3. Novo projeto abre no app. Você preenche o que ele pede e clica em Criar projeto: Chave de API da OpenAI.
  4. Em um ou dois minutos o app está no ar no próprio endereço com HTTPS. Os segredos dele são gerados ao acaso, e os dados vão para o backup noturno.
  5. É um projeto como qualquer outro: o compose.yaml, o .env, os logs e um terminal ficam no painel, e seu agente pode alterá-lo, fazer rollback ou restaurá-lo.

Primeiros passos

Abra https://openviking.sam.pethost.app/studio/settings e cole a chave root: é OPENVIKING_ROOT_API_KEY no .env do projeto. Depois crie uma conta e um usuário em /studio/users: a chave do usuário é a que a CLI ov, os SDKs e os agentes usam. Os embeddings e os resumos vão para a OpenAI com a sua chave. Os dados e o ov.conf ficam guardados em /app/.openviking.

O que roda

O template é este compose.yaml e as variáveis que ele grava no .env do projeto. O Pethost roda o arquivo exatamente como está escrito.

services:
  openviking:
    image: ghcr.io/volcengine/openviking:v0.5.0
    restart: unless-stopped
    environment:
      OPENAI_API_KEY: ${OPENAI_API_KEY}
      OPENVIKING_ROOT_API_KEY: ${OPENVIKING_ROOT_API_KEY}
      OPENVIKING_PUBLIC_BASE_URL: ${URL}
      # The bot needs a user's key of its own; the server runs without it.
      OPENVIKING_WITH_BOT: "0"
      # Written to ov.conf in the volume at the first start only. The server
      # expands the ${...} in it at every start, so a key changed in .env
      # takes effect on a restart.
      OPENVIKING_CONF_CONTENT: |
        {
          "server": {
            "host": "0.0.0.0",
            "port": 1933,
            "root_api_key": "$${OPENVIKING_ROOT_API_KEY}"
          },
          "storage": {
            "workspace": "./data",
            "vectordb": { "name": "context", "backend": "local" },
            "agfs": { "backend": "local" }
          },
          "embedding": {
            "dense": {
              "provider": "openai",
              "api_key": "$${OPENAI_API_KEY}",
              "model": "text-embedding-3-small",
              "dimension": 1536
            }
          },
          "vlm": {
            "provider": "openai",
            "api_key": "$${OPENAI_API_KEY}",
            "model": "gpt-4o-mini"
          }
        }
    volumes:
      - data:/app/.openviking

volumes:
  data: