Atualiza doc Coolify API e configura Vaultwarden com PostgreSQL
- Documentacao completa da API Coolify com endpoints corretos - Projeto renomeado de 'My first project' para 'Infraestrutura' - Banco PostgreSQL criado para Vaultwarden - VAULTWARDEN_DB_URL atualizado para usar PostgreSQL
This commit is contained in:
parent
01b4005e32
commit
6b3af3d962
1 changed files with 133 additions and 71 deletions
|
|
@ -5,97 +5,159 @@
|
|||
https://redbull.rede5.com.br/api/v1
|
||||
```
|
||||
|
||||
## Authentication
|
||||
Use Bearer token authentication:
|
||||
```bash
|
||||
curl -H "Authorization: Bearer $TOKEN" ...
|
||||
## Authorization
|
||||
|
||||
A API requer um token `Bearer` no header `Authorization`.
|
||||
|
||||
### Gerar Token
|
||||
1. Acesse `Keys & Tokens` / `API tokens` no painel Coolify
|
||||
2. Defina um nome para o token e clique em `Create New Token`
|
||||
3. Copie o token (so aparece uma vez)
|
||||
|
||||
### Token Atual
|
||||
```
|
||||
2|tjaxz6z6osQUz6whMvNMw23kcBqgToQAvMjSLos347164da9
|
||||
```
|
||||
|
||||
Token: `2|tjaxz6z6osQUz6whMvNMw23kcBqgToQAvMjSLos347164da9`
|
||||
### Permissoes
|
||||
- `read-only` (default): apenas leitura
|
||||
- `read:sensitive`: leitura + dados sensiveis
|
||||
- `view:sensitive`: visualizar dados sensiveis
|
||||
- `*`: acesso total
|
||||
|
||||
## Quick Commands
|
||||
## Endpoints Principais
|
||||
|
||||
### List all applications
|
||||
### Applications
|
||||
| Metodo | Endpoint | Descricao |
|
||||
|--------|----------|-----------|
|
||||
| GET | `/applications` | Listar aplicacoes |
|
||||
| GET | `/applications/{uuid}` | Obter aplicacao |
|
||||
| GET | `/applications/{uuid}/start` | Iniciar aplicacao |
|
||||
| GET | `/applications/{uuid}/stop` | Parar aplicacao |
|
||||
| GET | `/applications/{uuid}/restart` | Reiniciar aplicacao |
|
||||
| DELETE | `/applications/{uuid}` | Deletar aplicacao |
|
||||
| PATCH | `/applications/{uuid}` | Atualizar aplicacao |
|
||||
|
||||
### Databases
|
||||
| Metodo | Endpoint | Descricao |
|
||||
|--------|----------|-----------|
|
||||
| GET | `/databases` | Listar bancos |
|
||||
| GET | `/databases/{uuid}` | Obter banco |
|
||||
| POST | `/databases/postgresql` | Criar PostgreSQL |
|
||||
| POST | `/databases/mysql` | Criar MySQL |
|
||||
| POST | `/databases/mariadb` | Criar MariaDB |
|
||||
| POST | `/databases/mongodb` | Criar MongoDB |
|
||||
| POST | `/databases/redis` | Criar Redis |
|
||||
| GET | `/databases/{uuid}/start` | Iniciar banco |
|
||||
| GET | `/databases/{uuid}/stop` | Parar banco |
|
||||
| DELETE | `/databases/{uuid}` | Deletar banco |
|
||||
|
||||
### Deployments
|
||||
| Metodo | Endpoint | Descricao |
|
||||
|--------|----------|-----------|
|
||||
| GET | `/deployments` | Listar deployments |
|
||||
| GET | `/deploy?uuid={uuid}` | Deploy por UUID |
|
||||
| GET | `/deploy?tag={tag}` | Deploy por tag |
|
||||
|
||||
### Projects
|
||||
| Metodo | Endpoint | Descricao |
|
||||
|--------|----------|-----------|
|
||||
| GET | `/projects` | Listar projetos |
|
||||
| POST | `/projects` | Criar projeto |
|
||||
| GET | `/projects/{uuid}` | Obter projeto |
|
||||
| PATCH | `/projects/{uuid}` | Atualizar projeto |
|
||||
| DELETE | `/projects/{uuid}` | Deletar projeto |
|
||||
|
||||
### Servers
|
||||
| Metodo | Endpoint | Descricao |
|
||||
|--------|----------|-----------|
|
||||
| GET | `/servers` | Listar servidores |
|
||||
| GET | `/servers/{uuid}` | Obter servidor |
|
||||
| GET | `/servers/{uuid}/domains` | Listar dominios |
|
||||
|
||||
## Exemplos
|
||||
|
||||
### Listar Aplicacoes
|
||||
```bash
|
||||
curl -s -H "Authorization: Bearer $(cat ~/.ssh/coolify-redbull-token)" "https://redbull.rede5.com.br/api/v1/applications"
|
||||
curl -s -H "Authorization: Bearer $TOKEN" \
|
||||
"https://redbull.rede5.com.br/api/v1/applications"
|
||||
```
|
||||
|
||||
### Deploy by UUID
|
||||
### Criar PostgreSQL Database
|
||||
```bash
|
||||
# Frontend
|
||||
curl -s -X GET -H "Authorization: Bearer $TOKEN" "https://redbull.rede5.com.br/api/v1/deploy?uuid=ao8g40scws0w4cgo8coc8o40"
|
||||
|
||||
# Backend
|
||||
curl -s -X GET -H "Authorization: Bearer $TOKEN" "https://redbull.rede5.com.br/api/v1/deploy?uuid=iw4sow8s0kkg4cccsk08gsoo"
|
||||
curl -s -X POST -H "Authorization: Bearer $TOKEN" \
|
||||
-H "Content-Type: application/json" \
|
||||
"https://redbull.rede5.com.br/api/v1/databases/postgresql" \
|
||||
-d '{
|
||||
"name": "my-database",
|
||||
"description": "PostgreSQL database",
|
||||
"project_uuid": "t0c4ss0wkcgwg48g088wkwgs",
|
||||
"environment_name": "production",
|
||||
"server_uuid": "m844o4gkwkwcc0k48swgs8c8",
|
||||
"destination_uuid": "e0ggcws4gsw4w4wkgggkg8ow",
|
||||
"postgres_user": "myuser",
|
||||
"postgres_password": "mypassword",
|
||||
"postgres_db": "mydb",
|
||||
"image": "postgres:16-alpine",
|
||||
"instant_deploy": true
|
||||
}'
|
||||
```
|
||||
|
||||
### Check deployment status
|
||||
### Deploy por UUID
|
||||
```bash
|
||||
curl -s -H "Authorization: Bearer $TOKEN" "https://redbull.rede5.com.br/api/v1/deployments/{deployment_uuid}"
|
||||
curl -s -H "Authorization: Bearer $TOKEN" \
|
||||
"https://redbull.rede5.com.br/api/v1/deploy?uuid={UUID}"
|
||||
```
|
||||
|
||||
### Start/Stop/Restart application
|
||||
### Atualizar Dominio
|
||||
```bash
|
||||
# Start
|
||||
curl -s -H "Authorization: Bearer $TOKEN" "https://redbull.rede5.com.br/api/v1/applications/{uuid}/start"
|
||||
|
||||
# Stop
|
||||
curl -s -H "Authorization: Bearer $TOKEN" "https://redbull.rede5.com.br/api/v1/applications/{uuid}/stop"
|
||||
|
||||
# Restart
|
||||
curl -s -H "Authorization: Bearer $TOKEN" "https://redbull.rede5.com.br/api/v1/applications/{uuid}/restart"
|
||||
curl -s -X PATCH -H "Authorization: Bearer $TOKEN" \
|
||||
-H "Content-Type: application/json" \
|
||||
"https://redbull.rede5.com.br/api/v1/applications/{UUID}" \
|
||||
-d '{"domains":"https://meu-dominio.com"}'
|
||||
```
|
||||
|
||||
## Application UUIDs
|
||||
## UUIDs Importantes
|
||||
|
||||
| App | UUID |
|
||||
|-----|------|
|
||||
| gohorsejobs-backend-dev | iw4sow8s0kkg4cccsk08gsoo |
|
||||
| gohorsejobs-backoffice-dev | hg48wkw4wggwsswcwc8sooo4 |
|
||||
| gohorsejobs-frontend-dev | ao8g40scws0w4cgo8coc8o40 |
|
||||
| gohorsejobs-seeder-dev | q4w48gos8cgssso00o8w8gck |
|
||||
| rodiziosdaqui-backend-dev | ecso4woo4woo0ks84888k8ck |
|
||||
| rodiziosdaqui-backoffice-dev | s4kskw08400wcw8g40ossggo |
|
||||
| rodiziosdaqui-frontend-dev | l4g4cc884gc04kg8s480gs48 |
|
||||
| rodiziosdaqui-seeder-dev | ko0kkw4kw8g80scksg8sk0wc |
|
||||
### Server
|
||||
| Nome | UUID |
|
||||
|------|------|
|
||||
| localhost | `m844o4gkwkwcc0k48swgs8c8` |
|
||||
|
||||
## Scripts
|
||||
### Destination (Docker Network)
|
||||
| Nome | UUID |
|
||||
|------|------|
|
||||
| coolify | `e0ggcws4gsw4w4wkgggkg8ow` |
|
||||
|
||||
### Health Check Script
|
||||
### Projects
|
||||
| Nome | UUID |
|
||||
|------|------|
|
||||
| Infraestrutura | `t0c4ss0wkcgwg48g088wkwgs` |
|
||||
| gohorsejobs | `gkgksco0ow4kgwo8ow4cgs8c` |
|
||||
| rodiziosdaqui | `iooos0488ww0coccosc0sk4c` |
|
||||
| obramarket | `scwgsc8k0w84gkc88c080ck4` |
|
||||
|
||||
### Environments (Infraestrutura)
|
||||
| Nome | UUID |
|
||||
|------|------|
|
||||
| production | `sw4ckcgkgs0wssgs40os8s0g` |
|
||||
|
||||
## Variaveis de Ambiente
|
||||
```bash
|
||||
export COOLIFY_TOKEN="2|tjaxz6z6osQUz6whMvNMw23kcBqgToQAvMjSLos347164da9"
|
||||
export COOLIFY_URL="https://redbull.rede5.com.br/api/v1"
|
||||
export COOLIFY_SERVER="m844o4gkwkwcc0k48swgs8c8"
|
||||
export COOLIFY_DESTINATION="e0ggcws4gsw4w4wkgggkg8ow"
|
||||
```
|
||||
|
||||
## Script de Health Check
|
||||
```bash
|
||||
#!/bin/bash
|
||||
TOKEN=$(cat ~/.ssh/coolify-redbull-token | tr -d '\n')
|
||||
echo "=== Coolify Health Check ==="
|
||||
curl -s -H "Authorization: Bearer $TOKEN" "https://redbull.rede5.com.br/api/v1/applications" | python -c "
|
||||
import json,sys
|
||||
d = json.load(sys.stdin)
|
||||
for a in d:
|
||||
status = a.get('status','unknown')
|
||||
icon = '✅' if 'running' in status else '❌'
|
||||
print(f'{icon} {a[\"name\"]}: {status}')
|
||||
"
|
||||
TOKEN="2|tjaxz6z6osQUz6whMvNMw23kcBqgToQAvMjSLos347164da9"
|
||||
curl -s -H "Authorization: Bearer $TOKEN" \
|
||||
"https://redbull.rede5.com.br/api/v1/applications" | jq -r '.[] | "\(.name): \(.status)"'
|
||||
```
|
||||
|
||||
### Restart All Services
|
||||
```bash
|
||||
#!/bin/bash
|
||||
TOKEN=$(cat ~/.ssh/coolify-redbull-token | tr -d '\n')
|
||||
UUIDS=(
|
||||
"ao8g40scws0w4cgo8coc8o40"
|
||||
"q4w48gos8cgssso00o8w8gck"
|
||||
"iw4sow8s0kkg4cccsk08gsoo"
|
||||
"hg48wkw4wggwsswcwc8sooo4"
|
||||
"ecso4woo4woo0ks84888k8ck"
|
||||
"s4kskw08400wcw8g40ossggo"
|
||||
"l4g4cc884gc04kg8s480gs48"
|
||||
"ko0kkw4kw8g80scksg8sk0wc"
|
||||
)
|
||||
for uuid in "${UUIDS[@]}"; do
|
||||
echo "Deploying $uuid..."
|
||||
curl -s -X GET -H "Authorization: Bearer $TOKEN" "https://redbull.rede5.com.br/api/v1/deploy?uuid=$uuid"
|
||||
done
|
||||
```
|
||||
|
||||
## Useful Links
|
||||
- Coolify Docs: https://coolify.io/docs
|
||||
- API Reference: https://coolify.io/docs/api-reference/authorization
|
||||
## Links
|
||||
- [Coolify API Docs](https://coolify.io/docs/api-reference/authorization)
|
||||
- [GitHub Issues](https://github.com/coollabsio/coolify/issues)
|
||||
|
|
|
|||
Loading…
Reference in a new issue