Tengo dos proyectos diferentes verificados en Gitlab, frontend y backend. Para ambos proyectos, tengo un Dockerfile cada uno. He configurado las variables env en gitlab ci/cd. Estoy ejecutando el contenedor docker en kubernetes, pero no puedo acceder a las variables gitlab env en mi aplicación react o node.js (express).
Estaba pensando que esas variables env estarían disponibles para mí cuando haga process.env.variable_name, pero no puedo acceder a ellas.
¿Cuál es la mejor manera de acceder a las variables env de Gitlab en las variables env de kubernetes (deployment.yaml)?
ACTUALIZAR
Descubrí que podemos especificar variables env en kubernetes, archivo deployment.yaml (en la sección env). ¿Cómo puedo pasar variables de gitlab env a deployment.yaml?
Los contenedores de Docker requieren que establezca variables de entorno cuando los ejecuta:
--env , -e Set environment variablesPude acceder a la variable de entorno en la aplicación Node js usando la convención de nomenclatura de variables Gitlab K8S_SECRET_ . Por ejemplo, defina una variable como K8S_SECRET_MY_TEST_API en gitlab. En Node js, puede acceder a esta variable mediante process.env.MY_TEST_API .
El único problema al que me enfrento es que esas variables no están disponibles en la aplicación React. Todavía estoy tratando de averiguarlo. Actualizaré aquí una vez que resuelva ese problema.
Para inyectar variables de entorno en una aplicación de reacción creada con create-react-app, debe agregar el prefijo REACT_APP_ a cada variable de entorno.
Durante la compilación, webpack seleccionará todas las variables de entorno con ese prefijo y las agregará al entorno.