From 5fcdfe0ec2051b3ef2caefd79aca04fed55f9967 Mon Sep 17 00:00:00 2001 From: Oliver Eyton-Williams Date: Mon, 8 Jul 2024 14:39:18 +0200 Subject: [PATCH] fix(api): control host with env var (#55439) --- api/src/server.ts | 4 ++-- api/src/utils/env.ts | 2 ++ 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/api/src/server.ts b/api/src/server.ts index 1383cebea98..a999115bd53 100644 --- a/api/src/server.ts +++ b/api/src/server.ts @@ -4,7 +4,7 @@ // eslint-disable-next-line @typescript-eslint/triple-slash-reference /// import { build } from './app'; -import { FREECODECAMP_NODE_ENV, PORT } from './utils/env'; +import { FREECODECAMP_NODE_ENV, HOST, PORT } from './utils/env'; const envToLogger = { development: { @@ -27,7 +27,7 @@ const start = async () => { try { const port = Number(PORT); fastify.log.info(`Starting server on port ${port}`); - await fastify.listen({ port }); + await fastify.listen({ port, host: HOST }); } catch (err) { fastify.log.error(err); process.exit(1); diff --git a/api/src/utils/env.ts b/api/src/utils/env.ts index b8da7abde13..7b218193c37 100644 --- a/api/src/utils/env.ts +++ b/api/src/utils/env.ts @@ -68,6 +68,7 @@ if (process.env.FREECODECAMP_NODE_ENV !== 'development') { assert.ok(process.env.COOKIE_DOMAIN); assert.notEqual(process.env.COOKIE_SECRET, 'a_cookie_secret'); assert.ok(process.env.PORT); + assert.ok(process.env.HOST); assert.ok(process.env.SENTRY_DSN); // The following values can exist in development, but production-like // environments need to override the defaults. @@ -111,6 +112,7 @@ export const FREECODECAMP_NODE_ENV = process.env.FREECODECAMP_NODE_ENV; export const AUTH0_DOMAIN = process.env.AUTH0_DOMAIN; export const AUTH0_AUDIENCE = process.env.AUTH0_AUDIENCE; export const PORT = process.env.PORT || '3000'; +export const HOST = process.env.HOST || 'localhost'; export const API_LOCATION = process.env.API_LOCATION; export const FCC_ENABLE_SWAGGER_UI = process.env.FCC_ENABLE_SWAGGER_UI === 'true';