Initial commit: iLED shop monolith with Drone CI/CD scaffold.

Adds API, Angular shop/admin, docker compose, and .drone.yml for build + SSH deploy.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Rafał MiczekandCursor committed 2026-10-14 22:57:20 +02:00
commit ab2c7578ff
343 files changed
+69302

No files matched your search

+15
View File
@@ -0,0 +1,15 @@
# Copy to .env on the deploy host (never commit .env).
POSTGRES_DB=iled
POSTGRES_USER=iled
POSTGRES_PASSWORD=change-me
REDIS_PASSWORD=
# API
ASPNETCORE_ENVIRONMENT=Production
Cors__Origins__0=https://shop.example.com
Cors__Origins__1=https://admin.example.com
# Observability (optional)
OpenTelemetry__OtlpEndpoint=
OpenTelemetry__OtlpHeaders=
OpenTelemetry__ServiceName=iled-api
+12
View File
@@ -0,0 +1,12 @@
FROM mcr.microsoft.com/dotnet/sdk:10.0 AS build
WORKDIR /src
COPY . .
RUN dotnet restore iLED.sln
RUN dotnet publish src/iLED.Api/iLED.Api.csproj -c Release -o /app/publish
FROM mcr.microsoft.com/dotnet/aspnet:10.0
WORKDIR /app
COPY --from=build /app/publish .
EXPOSE 8080
ENV ASPNETCORE_URLS=http://+:8080
ENTRYPOINT ["dotnet", "iLED.Api.dll"]
+72
View File
@@ -0,0 +1,72 @@
services:
postgres:
image: postgres:16-alpine
container_name: iled-postgres
environment:
POSTGRES_DB: iled
POSTGRES_USER: iled
POSTGRES_PASSWORD: iled123
ports:
- "5433:5432"
volumes:
- iled_pgdata:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U iled -d iled"]
interval: 5s
timeout: 5s
retries: 5
redis:
image: redis:7-alpine
container_name: iled-redis
ports:
- "6379:6379"
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 5s
timeout: 5s
retries: 5
# Backend observability: logs + metrics + traces (UI http://localhost:5080)
# Login: root@iled.local / Complexpass#123
openobserve:
image: public.ecr.aws/zinclabs/openobserve:latest
container_name: iled-openobserve
environment:
ZO_ROOT_USER_EMAIL: root@iled.local
ZO_ROOT_USER_PASSWORD: Complexpass#123
ZO_DATA_DIR: /data
ports:
- "5080:5080"
volumes:
- iled_openobserve:/data
api:
build:
context: ../src/backend
dockerfile: ../../docker/Dockerfile.api
container_name: iled-api
ports:
- "5000:8080"
environment:
ASPNETCORE_ENVIRONMENT: Development
ConnectionStrings__DefaultConnection: "Host=postgres;Port=5432;Database=iled;Username=iled;Password=iled123"
ConnectionStrings__Redis: "redis:6379"
Cors__Origins__0: "http://localhost:4200"
Cors__Origins__1: "http://localhost:4201"
OpenTelemetry__OtlpEndpoint: "http://openobserve:5080/api/default"
OpenTelemetry__OtlpHeaders: "Authorization=Basic cm9vdEBpbGVkLmxvY2FsOkNvbXBsZXhwYXNzIzEyMw=="
OpenTelemetry__ServiceName: "iled-api"
depends_on:
postgres:
condition: service_healthy
redis:
condition: service_healthy
openobserve:
condition: service_started
profiles:
- full
volumes:
iled_pgdata:
iled_openobserve: