mirror of
https://git.victorphan.net/basketballcantho/ten-project.git
synced 2026-08-05 09:03:11 +07:00
sửa lai docker compose
This commit is contained in:
+11
-1
@@ -5,7 +5,17 @@ import bcrypt
|
||||
from jose import JWTError, jwt
|
||||
|
||||
# ── Config (override via environment variables) ───────────────────────────────
|
||||
SECRET_KEY: str = os.environ["JWT_SECRET_KEY"] # must be set — no default
|
||||
_raw_secret = os.getenv("JWT_SECRET_KEY", "")
|
||||
if not _raw_secret:
|
||||
import warnings
|
||||
_raw_secret = "lms_dev_jwt_secret_change_in_production"
|
||||
warnings.warn(
|
||||
"JWT_SECRET_KEY is not set — using insecure default. "
|
||||
"Set it in .env before going to production.",
|
||||
RuntimeWarning,
|
||||
stacklevel=1,
|
||||
)
|
||||
SECRET_KEY: str = _raw_secret
|
||||
ALGORITHM: str = os.getenv("JWT_ALGORITHM", "HS256")
|
||||
ACCESS_TOKEN_EXPIRE_MINUTES: int = int(
|
||||
os.getenv("ACCESS_TOKEN_EXPIRE_MINUTES", "60")
|
||||
|
||||
+3
-3
@@ -7,7 +7,7 @@ services:
|
||||
environment:
|
||||
POSTGRES_DB: ${POSTGRES_DB:-lms_db}
|
||||
POSTGRES_USER: ${POSTGRES_USER:-lms_user}
|
||||
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
|
||||
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-lms_dev_password}
|
||||
volumes:
|
||||
- postgres_data:/var/lib/postgresql/data
|
||||
healthcheck:
|
||||
@@ -44,8 +44,8 @@ services:
|
||||
redis:
|
||||
condition: service_healthy
|
||||
environment:
|
||||
DATABASE_URL: postgresql+psycopg2://${POSTGRES_USER:-lms_user}:${POSTGRES_PASSWORD}@db:5432/${POSTGRES_DB:-lms_db}
|
||||
JWT_SECRET_KEY: ${JWT_SECRET_KEY}
|
||||
DATABASE_URL: postgresql+psycopg2://${POSTGRES_USER:-lms_user}:${POSTGRES_PASSWORD:-lms_dev_password}@db:5432/${POSTGRES_DB:-lms_db}
|
||||
JWT_SECRET_KEY: ${JWT_SECRET_KEY:-lms_dev_jwt_secret_change_in_production}
|
||||
JWT_ALGORITHM: HS256
|
||||
ACCESS_TOKEN_EXPIRE_MINUTES: ${ACCESS_TOKEN_EXPIRE_MINUTES:-60}
|
||||
UPLOAD_DIR: /uploads
|
||||
|
||||
+4
-1
@@ -16,7 +16,7 @@ COPY . .
|
||||
ARG NEXT_PUBLIC_API_URL=http://backend:8000
|
||||
ENV NEXT_PUBLIC_API_URL=$NEXT_PUBLIC_API_URL
|
||||
|
||||
RUN npm run build
|
||||
RUN mkdir -p /app/public && npm run build
|
||||
|
||||
# ── Stage 3: runtime ──────────────────────────────────────────────────────────
|
||||
FROM node:20-alpine AS runtime
|
||||
@@ -24,6 +24,9 @@ FROM node:20-alpine AS runtime
|
||||
WORKDIR /app
|
||||
ENV NODE_ENV=production
|
||||
|
||||
# public/ may not exist in projects that don't use it — create it to be safe
|
||||
RUN mkdir -p .next/static public
|
||||
|
||||
COPY --from=builder /app/public ./public
|
||||
COPY --from=builder /app/.next/standalone ./
|
||||
COPY --from=builder /app/.next/static ./.next/static
|
||||
|
||||
Reference in New Issue
Block a user