Some checks failed
Build and Push Docker Images / build-and-push (./archon-ui-main, ./archon-ui-main/Dockerfile, frontend) (push) Failing after 1m45s
Build and Push Docker Images / build-and-push (./python, ./python/Dockerfile.agents, agents) (push) Failing after 6s
Build and Push Docker Images / build-and-push (./python, ./python/Dockerfile.mcp, mcp) (push) Failing after 7s
Build and Push Docker Images / build-and-push (./python, ./python/Dockerfile.server, server) (push) Failing after 6s
Build and Push Docker Images / summary (push) Has been skipped
Test Build / build (push) Failing after 3s
- Add build-push-images.yml workflow for automated builds - Build and push all 4 images (server, mcp, frontend, agents) - Support versioning: latest, semver, commit SHA - Add docker-compose.registry.yml for registry images - Add REGISTRY.md documentation for DevOps team Images will be pushed to: - git.automatizase.com.br/luis.erlacher/archon/server - git.automatizase.com.br/luis.erlacher/archon/mcp - git.automatizase.com.br/luis.erlacher/archon/frontend - git.automatizase.com.br/luis.erlacher/archon/agents 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
5.7 KiB
5.7 KiB
Usando Imagens do Registry Gitea
Este documento descreve como usar as imagens Docker do Archon a partir do registry privado do Gitea.
Registry Information
Registry URL: git.automatizase.com.br
Repository: luis.erlacher/archon
Imagens Disponíveis
Todas as imagens são buildadas automaticamente via Gitea Actions e publicadas com múltiplas tags:
| Serviço | Imagem | Descrição |
|---|---|---|
| Server | git.automatizase.com.br/luis.erlacher/archon/server |
FastAPI + Crawling + Socket.IO |
| MCP | git.automatizase.com.br/luis.erlacher/archon/mcp |
MCP Server para IDEs |
| Frontend | git.automatizase.com.br/luis.erlacher/archon/frontend |
React UI |
| Agents | git.automatizase.com.br/luis.erlacher/archon/agents |
AI Agents (opcional) |
Tags Disponíveis
Cada imagem é publicada com 3 tags:
latest- Última versão estável da branch mainv1.0.X- Versão semântica (X = número do build)SHORT_SHA- Hash curto do commit (7 caracteres)
Exemplos:
git.automatizase.com.br/luis.erlacher/archon/server:latest
git.automatizase.com.br/luis.erlacher/archon/server:v1.0.42
git.automatizase.com.br/luis.erlacher/archon/server:a3c2f1e
Autenticação no Registry
1. Login com Docker
docker login git.automatizase.com.br
# Username: luis.erlacher
# Password: [seu token de acesso]
2. Gerar Token de Acesso
- Acesse: https://git.automatizase.com.br/user/settings/applications
- Clique em "Generate New Token"
- Selecione permissões:
read:package,write:package - Use o token gerado como senha no docker login
Uso em Docker Compose
Opção 1: Usar arquivo fornecido
# Copiar arquivo .env de exemplo
cp .env.example .env
# Editar variáveis de ambiente necessárias
nano .env
# Subir com imagens do registry
docker compose -f docker-compose.registry.yml up -d
# Com agents (opcional)
docker compose -f docker-compose.registry.yml --profile agents up -d
Opção 2: Criar seu próprio compose
services:
archon-server:
image: git.automatizase.com.br/luis.erlacher/archon/server:v1.0.42
# ... configurações
archon-mcp:
image: git.automatizase.com.br/luis.erlacher/archon/mcp:v1.0.42
# ... configurações
archon-frontend:
image: git.automatizase.com.br/luis.erlacher/archon/frontend:v1.0.42
# ... configurações
Uso em Kubernetes
1. Criar Secret para Registry
kubectl create secret docker-registry gitea-registry \
--docker-server=git.automatizase.com.br \
--docker-username=luis.erlacher \
--docker-password=<seu-token> \
--docker-email=lperlacher@gmail.com
2. Usar em Deployment
apiVersion: apps/v1
kind: Deployment
metadata:
name: archon-server
spec:
template:
spec:
imagePullSecrets:
- name: gitea-registry
containers:
- name: server
image: git.automatizase.com.br/luis.erlacher/archon/server:v1.0.42
ports:
- containerPort: 8181
Versionamento
Usando Tags Específicas (Recomendado para Produção)
services:
archon-server:
image: git.automatizase.com.br/luis.erlacher/archon/server:v1.0.42
Vantagens:
- Builds reproduzíveis
- Rollback fácil
- Não quebra com atualizações
Usando Latest (Desenvolvimento)
services:
archon-server:
image: git.automatizase.com.br/luis.erlacher/archon/server:latest
Vantagens:
- Sempre atualizado
- Ideal para staging/dev
CI/CD Pipeline
O workflow .gitea/workflows/build-push-images.yml é disparado:
- Em push para main - Cria versão
v1.0.Xelatest - Em tags git - Usa a tag como versão (ex:
v2.0.0) - Manual - Via workflow_dispatch no Gitea Actions
Criar Release com Tag
git tag -a v2.0.0 -m "Release version 2.0.0"
git push origin v2.0.0
Isso irá buildar e publicar todas as imagens com tag v2.0.0.
Variáveis de Ambiente Necessárias
No Gitea Actions, configure os secrets:
GITEA_USERNAME- Usuário do Gitea (luis.erlacher)GITEA_TOKEN- Token de acesso com permissões de package
Configurar Secrets no Gitea
- Acesse: https://git.automatizase.com.br/luis.erlacher/Archon/settings/secrets
- Adicione:
- Name:
GITEA_USERNAME, Value:luis.erlacher - Name:
GITEA_TOKEN, Value:[seu token]
- Name:
Troubleshooting
Erro de Autenticação
# Verificar login
docker logout git.automatizase.com.br
docker login git.automatizase.com.br
# Pull de teste
docker pull git.automatizase.com.br/luis.erlacher/archon/server:latest
Ver Versões Disponíveis
Acesse: https://git.automatizase.com.br/luis.erlacher/-/packages
Limpar Imagens Antigas Localmente
docker images | grep "git.automatizase.com.br" | awk '{print $3}' | xargs docker rmi
Para DevOps/SRE
Helm Chart (exemplo básico)
# values.yaml
image:
registry: git.automatizase.com.br
repository: luis.erlacher/archon
tag: v1.0.42
pullSecrets:
- gitea-registry
server:
image: "{{ .Values.image.registry }}/{{ .Values.image.repository }}/server:{{ .Values.image.tag }}"
mcp:
image: "{{ .Values.image.registry }}/{{ .Values.image.repository }}/mcp:{{ .Values.image.tag }}"
ArgoCD Application
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: archon
spec:
source:
repoURL: https://git.automatizase.com.br/luis.erlacher/Archon.git
targetRevision: main
path: k8s/manifests
destination:
server: https://kubernetes.default.svc
namespace: archon
Suporte
Para issues ou dúvidas: