توسعه: برگرداندن پروکسی Vite و پورتهای compose به مسیر Traefik
- vite.config.ts دوباره /api و /media را به Traefik (پورت 5173) پروکسی میکند - compose: بدون پورت مستقیم 8000/9000 — بکاند لوکال اینجا روی 8001 است و پورت 8000 متعلق به استک دیگر
This commit is contained in:
+2
-6
@@ -12,8 +12,7 @@ services:
|
|||||||
- --providers.docker.exposedbydefault=false
|
- --providers.docker.exposedbydefault=false
|
||||||
- --entrypoints.web.address=:80
|
- --entrypoints.web.address=:80
|
||||||
ports:
|
ports:
|
||||||
# پورت به 8080 تغییر کرد تا با پورت 5173 سرور لوکال Vite تداخل نکند
|
- "${TRAEFIK_HTTP_PORT:-5173}:80"
|
||||||
- "${TRAEFIK_HTTP_PORT:-8080}:80"
|
|
||||||
volumes:
|
volumes:
|
||||||
- /var/run/docker.sock:/var/run/docker.sock:ro
|
- /var/run/docker.sock:/var/run/docker.sock:ro
|
||||||
|
|
||||||
@@ -47,8 +46,7 @@ services:
|
|||||||
timeout: 5s
|
timeout: 5s
|
||||||
retries: 12
|
retries: 12
|
||||||
ports:
|
ports:
|
||||||
- "9001:9001" # کنسول MinIO
|
- "9001:9001" # کنسول MinIO — در محیط واقعی با فایروال ببندید
|
||||||
- "9000:9000" # دسترسی لوکال به تصاویر و مدیا
|
|
||||||
labels:
|
labels:
|
||||||
- traefik.enable=true
|
- traefik.enable=true
|
||||||
- traefik.http.routers.media.rule=PathPrefix(`/media`)
|
- traefik.http.routers.media.rule=PathPrefix(`/media`)
|
||||||
@@ -81,8 +79,6 @@ services:
|
|||||||
backend:
|
backend:
|
||||||
build: ./backend
|
build: ./backend
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
ports:
|
|
||||||
- "8000:8000" # اتصال مستقیم بکاند به ویندوز برای فرانتاند لوکال
|
|
||||||
environment:
|
environment:
|
||||||
DATABASE_URL: postgresql+psycopg://aramesh:${POSTGRES_PASSWORD}@db:5432/arameshplaza
|
DATABASE_URL: postgresql+psycopg://aramesh:${POSTGRES_PASSWORD}@db:5432/arameshplaza
|
||||||
SECRET_KEY: ${SECRET_KEY:?SECRET_KEY را در .env تنظیم کنید}
|
SECRET_KEY: ${SECRET_KEY:?SECRET_KEY را در .env تنظیم کنید}
|
||||||
|
|||||||
@@ -5,16 +5,10 @@ import react from '@vitejs/plugin-react'
|
|||||||
export default defineConfig({
|
export default defineConfig({
|
||||||
plugins: [react()],
|
plugins: [react()],
|
||||||
server: {
|
server: {
|
||||||
|
// در حالت توسعه، /api و /media به Traefik پروکسی میشوند (پورت ۵۱۷۳ روی هاست)
|
||||||
proxy: {
|
proxy: {
|
||||||
'/api': {
|
'/api': 'http://localhost:5173',
|
||||||
target: 'http://localhost:8000',
|
'/media': 'http://localhost:5173',
|
||||||
changeOrigin: true,
|
|
||||||
},
|
|
||||||
'/media': {
|
|
||||||
target: 'http://localhost:9000',
|
|
||||||
changeOrigin: true,
|
|
||||||
rewrite: (path) => path.replace(/^\/media/, '/aramesh-media'),
|
|
||||||
},
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
Reference in New Issue
Block a user