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
- Você entra no Pethost ou cria uma conta, com uma passkey, GitHub ou Google.
- 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.
- Novo projeto abre no app. Você preenche o que ele pede e clica em Criar projeto: Chave de API da OpenAI.
- 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.
- É 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: