X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=docker%2FNG-UI%2FDockerfile;h=c4d67df91896cb500e01f5ffe01bd4d2f6166c72;hb=8400395b2e94a3a886cc3192be3fc125aa5dd7c1;hp=b781ec05392a29001ac9c482f4003af5fb7eba3f;hpb=9887bb483aca5c1948ecb1939223036316574ed9;p=osm%2Fdevops.git diff --git a/docker/NG-UI/Dockerfile b/docker/NG-UI/Dockerfile index b781ec05..c4d67df9 100644 --- a/docker/NG-UI/Dockerfile +++ b/docker/NG-UI/Dockerfile @@ -1,4 +1,5 @@ -# Copyright 2020 ETSI +####################################################################################### +# Copyright ETSI Contributors and Others. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -12,35 +13,63 @@ # implied. # See the License for the specific language governing permissions and # limitations under the License. +####################################################################################### -FROM ubuntu:18.04 +FROM ubuntu:20.04 as INSTALL -RUN apt-get update && apt-get install -y curl xz-utils gnupg2 \ - && apt-get update && apt-get install -y apt-transport-https software-properties-common \ - && curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add - \ - && echo "deb https://deb.nodesource.com/node_10.x xenial main" | tee -a /etc/apt/sources.list.d/nodesource.list \ - && echo "deb-src https://deb.nodesource.com/node_10.x xenial main" | tee -a /etc/apt/sources.list.d/nodesource.list \ - && apt-get update && apt-get install -y nodejs \ - && apt-get install -y nginx +ARG APT_PROXY +RUN if [ ! -z $APT_PROXY ] ; then \ + echo "Acquire::http::Proxy \"$APT_PROXY\";" > /etc/apt/apt.conf.d/proxy.conf ;\ + echo "Acquire::https::Proxy \"$APT_PROXY\";" >> /etc/apt/apt.conf.d/proxy.conf ;\ + fi -ARG REPOSITORY_BASE=http://osm-download.etsi.org/repository/osm/debian -ARG RELEASE=ReleaseSEVEN-daily -ARG REPOSITORY_KEY=OSM%20ETSI%20Release%20Key.gpg -ARG REPOSITORY=testing -ARG NGUI_VERSION +RUN DEBIAN_FRONTEND=noninteractive apt-get --yes update && \ + DEBIAN_FRONTEND=noninteractive apt-get --yes install \ + apt-transport-https=2.0.* \ + curl=7.68.* \ + gnupg2=2.2.* \ + nginx=1.18.* \ + software-properties-common=0.99.* \ + xz-utils=5.2.* -RUN curl ${REPOSITORY_BASE}/${RELEASE}/${REPOSITORY_KEY} | apt-key add - -RUN add-apt-repository -y "deb ${REPOSITORY_BASE}/${RELEASE} ${REPOSITORY} NG-UI" && apt-get update +RUN curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add - && \ + echo "deb https://deb.nodesource.com/node_10.x focal main" | tee -a /etc/apt/sources.list.d/nodesource.list && \ + DEBIAN_FRONTEND=noninteractive apt-get update && \ + DEBIAN_FRONTEND=noninteractive apt-get install -y nodejs=10.24.* -RUN apt-get install -y osm-ngui${NGUI_VERSION} && \ - rm -rf /var/lib/apt/lists/* +ARG OSM_NGUI_URL + +RUN curl $OSM_NGUI_URL -o osm_ngui.deb +RUN dpkg -i ./osm_ngui.deb WORKDIR /usr/share/osm-ngui RUN npm install + # Building app. RUN npm run build -RUN cp /usr/share/osm-ngui/nginx.conf /etc/nginx/sites-available/default -#RUN cp /usr/share/osm-ngui/supervisor-app.conf /etc/supervisor/conf.d/ + +####################################################################################### +FROM ubuntu:20.04 AS FINAL + +ARG APT_PROXY +RUN if [ ! -z $APT_PROXY ] ; then \ + echo "Acquire::http::Proxy \"$APT_PROXY\";" > /etc/apt/apt.conf.d/proxy.conf ;\ + echo "Acquire::https::Proxy \"$APT_PROXY\";" >> /etc/apt/apt.conf.d/proxy.conf ;\ + fi + +RUN DEBIAN_FRONTEND=noninteractive apt-get --yes update && \ + DEBIAN_FRONTEND=noninteractive apt-get --yes install \ + nginx=1.18.* && \ + rm -rf /var/lib/apt/lists/* + +# Removing the Nginx default page. +RUN rm -rf /usr/share/nginx/html/* + +# Copying Nginx configuration +COPY --from=INSTALL /usr/share/osm-ngui/nginx/nginx.conf /etc/nginx/sites-available/default + +# Copying angular build to Nginx default page. +COPY --from=INSTALL /usr/share/osm-ngui/dist/osm /usr/share/nginx/html EXPOSE 80 @@ -49,4 +78,3 @@ HEALTHCHECK --start-period=130s --interval=10s --timeout=5s --retries=12 \ # Starting server. CMD ["nginx", "-g", "daemon off;"] -