Add R2 image storage, upload endpoint, and CDN support
All checks were successful
ci/woodpecker/push/deploy Pipeline was successful
All checks were successful
ci/woodpecker/push/deploy Pipeline was successful
- Backend: R2StorageService, upload controller (POST /api/upload) - Frontend: CDN url helper, NEXT_PUBLIC_CDN_URL build arg - Deploy: pass R2 secrets from Woodpecker CI to containers via .env - Docs: update CLAUDE.md with CDN and upload conventions Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -7,13 +7,30 @@ steps:
|
||||
image: appleboy/drone-ssh
|
||||
when:
|
||||
branch: main
|
||||
environment:
|
||||
R2_ACCOUNT_ID:
|
||||
from_secret: r2_account_id
|
||||
R2_ACCESS_KEY_ID:
|
||||
from_secret: r2_access_key_id
|
||||
R2_SECRET_ACCESS_KEY:
|
||||
from_secret: r2_secret_access_key
|
||||
settings:
|
||||
host: 31.131.18.254
|
||||
username: deploy
|
||||
key:
|
||||
from_secret: ssh_key
|
||||
envs:
|
||||
- R2_ACCOUNT_ID
|
||||
- R2_ACCESS_KEY_ID
|
||||
- R2_SECRET_ACCESS_KEY
|
||||
script:
|
||||
- cd /srv/apps/gb-site && git pull origin main
|
||||
- |
|
||||
cat > /srv/apps/gb-site/deploy/.env << EOF
|
||||
R2_ACCOUNT_ID=$R2_ACCOUNT_ID
|
||||
R2_ACCESS_KEY_ID=$R2_ACCESS_KEY_ID
|
||||
R2_SECRET_ACCESS_KEY=$R2_SECRET_ACCESS_KEY
|
||||
EOF
|
||||
- cd /srv/apps/gb-site/deploy && docker compose -f docker-compose.prod.yml build --no-cache
|
||||
- cd /srv/apps/gb-site/deploy && docker compose -f docker-compose.prod.yml up -d
|
||||
|
||||
@@ -21,12 +38,29 @@ steps:
|
||||
image: appleboy/drone-ssh
|
||||
when:
|
||||
branch: dev
|
||||
environment:
|
||||
R2_ACCOUNT_ID:
|
||||
from_secret: r2_account_id
|
||||
R2_ACCESS_KEY_ID:
|
||||
from_secret: r2_access_key_id
|
||||
R2_SECRET_ACCESS_KEY:
|
||||
from_secret: r2_secret_access_key
|
||||
settings:
|
||||
host: 31.131.18.254
|
||||
username: deploy
|
||||
key:
|
||||
from_secret: ssh_key
|
||||
envs:
|
||||
- R2_ACCOUNT_ID
|
||||
- R2_ACCESS_KEY_ID
|
||||
- R2_SECRET_ACCESS_KEY
|
||||
script:
|
||||
- cd /srv/apps/gb-site && git pull origin dev
|
||||
- cd /srv/apps/gb-site/deploy && docker compose -f docker-compose.dev.yml build --no-cache
|
||||
- cd /srv/apps/gb-site/deploy && docker compose -f docker-compose.dev.yml up -d
|
||||
- cd /srv/apps/gb-site-dev && git pull origin dev
|
||||
- |
|
||||
cat > /srv/apps/gb-site-dev/deploy/.env << EOF
|
||||
R2_ACCOUNT_ID=$R2_ACCOUNT_ID
|
||||
R2_ACCESS_KEY_ID=$R2_ACCESS_KEY_ID
|
||||
R2_SECRET_ACCESS_KEY=$R2_SECRET_ACCESS_KEY
|
||||
EOF
|
||||
- cd /srv/apps/gb-site-dev/deploy && docker compose -f docker-compose.dev.yml build --no-cache
|
||||
- cd /srv/apps/gb-site-dev/deploy && docker compose -f docker-compose.dev.yml up -d
|
||||
|
||||
Reference in New Issue
Block a user