Commit d6ec038d authored by Pedro Eduardo Trujillo's avatar Pedro Eduardo Trujillo
Browse files

Permite paso de puerto e idioma por entorno

Acepta, aparte del paso de parámetros al comando, la asignación de valor
de puerto e idioma por defecto a usar a través de variables de entorno.

Permite definir tanto a nivel de construcción de imagen como de
despliegue el valor del argumento/variable PORT, por defecto usando el
80. Para despliegue, acepta también el paso de valor para DEFAULT_LANG.

Recupera puerto variable en healthcheck y emplea IP local en lugar de
localhost.
parent 157ab370
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -14,6 +14,7 @@ Una vez clonado el repositorio del proyecto en el entorno local de desarrollo y
```sh
npm install

PORT=80 \
OAUTH_URL=https://api.ecomarcan.grafcan.es/api/oauth \
OAUTH_CLIENT_ID=app \
OAUTH_CLIENT_SECRET=secretKey \
@@ -23,7 +24,7 @@ OID_CLIENT_SECRET=secretKey \
API_URL=https://api.ecomarcan.grafcan.es/api \
CONFIG_URL=https://s3.eu-west-1.amazonaws.com/mediastorage.redmicdev/public/config.json \
PRODUCTION=0 \
npm start -- --port=80
npm start
```

Para poder arrancar usando el puerto 80, es necesario tener los permisos adecuados. Si el comando anterior falla por este motivo, ejecutar una vez lo siguiente para conceder permisos a NodeJS e intentarlo de nuevo:
+2 −0
Original line number Diff line number Diff line
NODE_IMAGE_TAG=20.16.0-alpine3.20

PORT=80
+7 −4
Original line number Diff line number Diff line
@@ -4,14 +4,17 @@ FROM node:${NODE_IMAGE_TAG}

LABEL maintainer="info@redmic.es"

ENV NODE_ENV="production"
CMD ["server-app", "-b"]

EXPOSE 3050
ARG PORT

CMD ["server-app", "-b"]
EXPOSE ${PORT}

ENV NODE_ENV="production" \
	PORT="${PORT}"

HEALTHCHECK --interval=30s --timeout=15s --start-period=1m --retries=3 \
	CMD wget --spider -q http://localhost:3050 || exit 1
	CMD wget --spider -q http://127.0.0.1:${PORT} || exit 1

ADD redmic-project-web-*.tgz /

+1 −0
Original line number Diff line number Diff line
@@ -6,4 +6,5 @@ services:
      dockerfile: ${DOCKERFILE:-build/Dockerfile}
      args:
        NODE_IMAGE_TAG:
        PORT:
        VERSION:
+3 −0
Original line number Diff line number Diff line
PORT=80
DEFAULT_LANG=es

OAUTH_URL=https://api.domain/oauth
OAUTH_CLIENT_ID=app
OAUTH_CLIENT_SECRET=secret
Loading