AlpineConsent CI/CD Pipeline / Build and Test AlpineConsent (push) Failing after 45s
49 lines
1.5 KiB
Markdown
49 lines
1.5 KiB
Markdown
# 🏗 AlpineSAAS — Infrastructure & Orchestration
|
|
|
|
Core infrastructure layer for the AlpineConsent ecosystem. Manages container orchestration, reverse proxy, relational databases, in-memory caching, and self-hosted CI/CD runners.
|
|
|
|
---
|
|
|
|
## 💤 Stack Overview
|
|
|
|
| Service | Technology | Internal Port | Host Binding | Purpose |
|
|
| :--- | :--- | :--- | :--- | :--- |
|
|
| **Edge Gateway** | Caddy 2 | 80, 443 | 0.0.0.0:80, 443 | Auto TLS termination & Reverse Proxy |
|
|
| **Git Server** | Gitea | 3000, 22 | 0.0.0.0:2222->22 | Git server & VCS API |
|
|
| **CI/CD Runner** | Act Runner | - | Worker | Executes Actions workflows in Docker |
|
|
| **Primary DB** | PostgreSQL 15 | 5432 | Internal only | Multi-tenant persistent relational store |
|
|
| **Cache & Queue** | Redis 7 | 6379 | Internal only | Rate limiting & session store |
|
|
|
|
---
|
|
|
|
## 🚨 Deployment & Operations
|
|
|
|
### Prerequisites
|
|
* Docker Engine 24+ & Docker Compose v2+
|
|
* Open inbound TCP ports on host/firewall: 80, 443, 2222
|
|
|
|
### 1. Setup Environment
|
|
```bash
|
|
cp .env.example .env
|
|
nano .env
|
|
```
|
|
|
|
### 2. Launch Infrastructure
|
|
```bash
|
|
docker compose up -d
|
|
```
|
|
|
|
### 3. Verify Health & Logs
|
|
```bash
|
|
docker compose ps
|
|
logs: docker compose logs -f caddy
|
|
```
|
|
|
|
---
|
|
|
|
## Security & Networking
|
|
|
|
* **Internal Isolation:** PostgreSQL and Redis containers do *not* expose ports to the public host. They communicate exclusively over the isolated bridge network `alpine_net`.
|
|
* **Database Auth:** Native password authentication enabled with dedicated health checks.
|
|
* **TLS:** Handled automatically by Caddy at the edge.
|