RUN npm run build -- --configuration production
FROM nginxinc/nginx-unprivileged:alpine-slim
-USER root
-RUN apk add --no-cache gettext # required for envsubst in docker_entrypoint.sh
USER nginx
-COPY --chown=nginx:nginx server/nginx* ./
-COPY --chown=nginx:nginx docker_entrypoint.sh .
COPY --from=builder --chown=nginx:nginx /usr/src/app/dist/frontend /usr/share/nginx/html
-ENTRYPOINT ["/docker_entrypoint.sh"]
+
+# Overwrite existing entrypoint from base image
+ENTRYPOINT []
EXPOSE ${NGINX_PORT}
CMD ["nginx", "-g", "daemon off;"]
+++ /dev/null
-#!/usr/bin/env sh
-#
-#
-# Copyright (c) 2022. Deutsche Telekom AG
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# SPDX-License-Identifier: Apache-2.0
-#
-#
-#
-
-set -eu
-
-export CLUSTER_NAMESERVER_IP=$(grep 'nameserver' /etc/resolv.conf | awk '{print $2}') # dynamically retrieve nameserver on startup
-envsubst '${BFF_URL} ${NGINX_PORT} ${KEYCLOAK_URL} ${KEYCLOAK_REALM} ${KEYCLOAK_INTERNAL_URL} ${CLUSTER_NAMESERVER_IP}' < ./nginx.template > /etc/nginx/conf.d/default.conf
-
-# dynamically set Angular environment config upon container startup
-envsubst < /usr/share/nginx/html/assets/env.template.js > /usr/share/nginx/html/assets/env.js
-
-exec "$@"
+++ /dev/null
-# if run in local docker container add this resolver for the DNS to connect to Keycloak
-resolver ${CLUSTER_NAMESERVER_IP};
-
-server {
- listen ${NGINX_PORT};
-
- location / {
- root /usr/share/nginx/html;
- index index.html;
- try_files $uri $uri/ /index.html =404;
- }
-
- location /api/ {
- set $upstream ${BFF_URL};
- rewrite /api/(.*) /$1 break;
- add_header Access-Control-Allow-Origin *;
- proxy_pass $upstream/$1$is_args$args;
- proxy_set_header Host $host;
- proxy_set_header X-Real-IP $remote_addr;
- proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
- proxy_set_header X-Forwarded-Host $host;
- proxy_set_header X-Forwarded-Server $host;
- proxy_set_header X-Forwarded-Port $server_port;
- proxy_set_header X-Forwarded-Proto $scheme;
- proxy_http_version 1.1;
- }
-
- location /auth/ {
- set $upstream ${KEYCLOAK_INTERNAL_URL};
- rewrite /auth/(.*) /$1 break;
- add_header Access-Control-Allow-Origin *;
- proxy_pass $upstream/$1$is_args$args;
- proxy_http_version 1.1;
- proxy_set_header Host $host;
- proxy_set_header X-Real-IP $remote_addr;
- proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
- proxy_set_header X-Forwarded-Host $host;
- proxy_set_header X-Forwarded-Server $host;
- proxy_set_header X-Forwarded-Port $server_port;
- proxy_set_header X-Forwarded-Proto $scheme;
- }
-}
-
-##
-# Gzip Settings
-##
-gzip on;
-gzip_vary on;
-gzip_proxied any;
-gzip_min_length 1100;
-gzip_comp_level 6;
-gzip_buffers 16 8k;
-gzip_http_version 1.1;
-gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;
-
--- /dev/null
+# Versioning variables\r
+# Note that these variables cannot be structured (e.g. : version.release or version.snapshot etc... )\r
+# because they are used in Jenkins, whose plug-in doesn't support\r
+\r
+major=0\r
+minor=1\r
+patch=0\r
+\r
+base_version=${major}.${minor}.${patch}\r
+\r
+# Release must be completed with git revision # in Jenkins\r
+release_version=${base_version}\r
+snapshot_version=${base_version}-SNAPSHOT
\ No newline at end of file