Merge pull request #89 from chamikaJ/fix/docker-compose-fix

Enhance environment configuration for frontend and CORS support
This commit is contained in:
Chamika J
2025-04-28 13:04:16 +05:30
committed by GitHub
2 changed files with 18 additions and 9 deletions

View File

@@ -19,6 +19,9 @@ else
WS_PREFIX="ws://"
fi
# Frontend URLs
FRONTEND_URL="${HTTP_PREFIX}${HOSTNAME}:5000"
# Create or overwrite frontend .env.development file
mkdir -p worklenz-frontend
cat > worklenz-frontend/.env.development << EOL
@@ -73,8 +76,8 @@ SESSION_SECRET=change_me_in_production
COOKIE_SECRET=change_me_in_production
# CORS
SOCKET_IO_CORS=${HTTP_PREFIX}${HOSTNAME}:5000
SERVER_CORS=${HTTP_PREFIX}${HOSTNAME}:5000
SOCKET_IO_CORS=${FRONTEND_URL}
SERVER_CORS=${FRONTEND_URL}
# Database
DB_HOST=db
@@ -99,7 +102,7 @@ BACKEND_VIEWS_DIR=./views
# Host
HOSTNAME=${HOSTNAME}
FRONTEND_URL=${HTTP_PREFIX}${HOSTNAME}:5000
FRONTEND_URL=${FRONTEND_URL}
# Email
SOURCE_EMAIL=no-reply@example.com
@@ -122,5 +125,7 @@ echo "- worklenz-backend/.env"
echo
echo "To run with Docker Compose, use: docker-compose up -d"
echo
echo "Production API URL: ${HTTP_PREFIX}${HOSTNAME}:3000"
echo "Production Socket URL: ${WS_PREFIX}${HOSTNAME}:3000"
echo "Frontend URL: ${FRONTEND_URL}"
echo "API URL: ${HTTP_PREFIX}${HOSTNAME}:3000"
echo "Socket URL: ${WS_PREFIX}${HOSTNAME}:3000"
echo "CORS is configured to allow requests from: ${FRONTEND_URL}"

View File

@@ -55,16 +55,20 @@ const allowedOrigins = [
isProduction()
? [
`http://localhost:5000`,
`http://127.0.0.1:5000`
]
`http://127.0.0.1:5000`,
process.env.SERVER_CORS || "", // Add hostname from env
process.env.FRONTEND_URL || "" // Support FRONTEND_URL as well
].filter(Boolean) // Remove empty strings
: [
"http://localhost:3000",
"http://localhost:5173",
"http://127.0.0.1:5173",
"http://127.0.0.1:3000",
"http://127.0.0.1:5000",
`http://localhost:5000`
]
`http://localhost:5000`,
process.env.SERVER_CORS || "", // Add hostname from env
process.env.FRONTEND_URL || "" // Support FRONTEND_URL as well
].filter(Boolean) // Remove empty strings
].flat();
app.use(cors({