diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 446770e257ed78594cf83d97ffc60bf10e86dad4..b69a30ca26094514dd299e1e0b99d69a965efa24 100755 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -4,6 +4,8 @@ variables: GOSDN_INTEGRATION_TEST_IMAGE: "${CI_REGISTRY_IMAGE}/integration-tests:${CI_COMMIT_SHA}" CEOS_IMAGE: "${CI_PCONTAINERS_REGISTRY_IMAGE}/ceos:4.28.2F" GOLANG_VERSION: "1.23" + NODE_VERSION: "23" + NGINX_VERSION: "1.27" GNMI_TARGET_IMAGE: registry.code.fbi.h-da.de/danet/gnmi-target/debian:master GNMI_TARGET_INTEGRATION_IMAGE: "$CI_REGISTRY_IMAGE/gnmi-target-integration-test:${CI_COMMIT_SHA}" DOCKER_TLS_CERTDIR: "/certs" diff --git a/.gitlab/ci/.build-container-images.yml b/.gitlab/ci/.build-container-images.yml index 7fda52178317dd8ff0d4a0bcc0f6eda809addf8a..4b62da4e255aba18fe2da9ed278289b5a44c90bb 100755 --- a/.gitlab/ci/.build-container-images.yml +++ b/.gitlab/ci/.build-container-images.yml @@ -78,7 +78,7 @@ build-inventory-manager-image: build-react-ui-image: script: - REACT_UI_IMAGE_NAME="${CI_REGISTRY_IMAGE}/react-ui" - - docker buildx build -t "$REACT_UI_IMAGE_NAME:$CI_COMMIT_SHA" -f "${CI_PROJECT_DIR}/react-ui/docker/webserver/Dockerfile" . + - docker buildx build -t "$REACT_UI_IMAGE_NAME:$CI_COMMIT_SHA" -f "${CI_PROJECT_DIR}/react-ui/docker/webserver/Dockerfile" --build-arg "NODE_VERSION=$NODE_VERSION" --build-arg "NGINX_VERSION=$NGINX_VERSION" --build-arg "GITLAB_PROXY=${CI_DEPENDENCY_PROXY_GROUP_IMAGE_PREFIX}/" . - docker push "$REACT_UI_IMAGE_NAME:$CI_COMMIT_SHA" - docker tag "$REACT_UI_IMAGE_NAME:$CI_COMMIT_SHA" "$REACT_UI_IMAGE_NAME:$CI_COMMIT_REF_SLUG" - docker push "$REACT_UI_IMAGE_NAME:$CI_COMMIT_REF_SLUG" diff --git a/react-ui/docker/webserver/Dockerfile b/react-ui/docker/webserver/Dockerfile index 9c4f3f6765bed330e062267d329db9f2f5e04ce9..3fe6616602bc7d3a110504acadb6c47669777a9a 100644 --- a/react-ui/docker/webserver/Dockerfile +++ b/react-ui/docker/webserver/Dockerfile @@ -1,17 +1,16 @@ -FROM node:alpine3.20 as builder +ARG NODE_VERSION=23 +ARG NGINX_VERSION=1.27 +ARG GITLAB_PROXY -COPY ./api/openapiv2/gosdn_northbound.swagger.json /app/api/openapiv2/gosdn_northbound.swagger.json -COPY ./react-ui /app/react-ui +FROM ${GITLAB_PROXY}node:$NODE_VERSION-alpine as builder -RUN cd /app/react-ui && \ - rm -rf node_modules && \ - rm yarn.lock && \ - yarn install --production && \ - yarn build +COPY ./api/openapiv2/gosdn_northbound.swagger.json /app/api/openapiv2/gosdn_northbound.swagger.json +COPY ./react-ui /app/react-ui +RUN cd /app/react-ui && yarn && yarn build # webserver -FROM nginx:alpine3.20 +FROM ${GITLAB_PROXY}nginx:$NGINX_VERSION-alpine COPY --from=builder /app/react-ui/dist /usr/share/nginx/html -COPY --from=builder /app/react-ui/docker/webserver/nginx.conf /etc/nginx/nginx.conf -EXPOSE 80 \ No newline at end of file +COPY --from=builder /app/react-ui/docker/webserver/nginx.conf /etc/nginx/nginx.conf +EXPOSE 80