X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=docker%2Flight-ui%2FDockerfile;h=204bfd890bb49a33f34c31c40361d3486db47235;hb=a4a37f7f9f5410ff2c7833b76bdc85f752c74849;hp=4440b9a08042fa49f920604ee410b051b665ed0d;hpb=e3167903834bdcb8d65e178edff8aca0bc31ce20;p=osm%2Fdevops.git diff --git a/docker/light-ui/Dockerfile b/docker/light-ui/Dockerfile index 4440b9a0..204bfd89 100644 --- a/docker/light-ui/Dockerfile +++ b/docker/light-ui/Dockerfile @@ -1,20 +1,41 @@ +# Copyright 2019 ETSI +# +# 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. + FROM ubuntu:16.04 -WORKDIR /usr/share/osm-lightui +RUN apt-get update && apt-get install -y npm git python-pip nginx supervisor curl software-properties-common libmysqlclient-dev mysql-client +RUN ln -s /usr/bin/nodejs /usr/bin/node +RUN echo "daemon off;" >> /etc/nginx/nginx.conf -RUN apt-get update && apt-get install -y npm git python-pip nginx supervisor -RUN npm install -g bower +ARG REPOSITORY_BASE=http://osm-download.etsi.org/repository/osm/debian +ARG RELEASE=ReleaseEIGHT-daily +ARG REPOSITORY_KEY=OSM%20ETSI%20Release%20Key.gpg +ARG REPOSITORY=testing +ARG LWUI_VERSION -ARG LWUI_VERSION= -RUN git clone https://osm.etsi.org/gerrit/osm/LW-UI /usr/share/osm-lightui && echo LWUI_VERSION +RUN curl ${REPOSITORY_BASE}/${RELEASE}/${REPOSITORY_KEY} | apt-key add - +RUN add-apt-repository -y "deb ${REPOSITORY_BASE}/${RELEASE} ${REPOSITORY} LW-UI" && apt-get update -RUN ln -s /usr/bin/nodejs /usr/bin/node -RUN bower install --allow-root +RUN apt-get install -y osm-lightui${LWUI_VERSION} && \ + rm -rf /var/lib/apt/lists/* +WORKDIR /usr/share/osm-lightui +RUN npm install +RUN mv node_modules ./static RUN pip install -r requirements.txt RUN pip install uwsgi -# -RUN echo "daemon off;" >> /etc/nginx/nginx.conf RUN cp /usr/share/osm-lightui/nginx-app.conf /etc/nginx/sites-available/default RUN cp /usr/share/osm-lightui/supervisor-app.conf /etc/supervisor/conf.d/ @@ -22,11 +43,14 @@ RUN cp /usr/share/osm-lightui/supervisor-app.conf /etc/supervisor/conf.d/ RUN rm -f db.sqlite3 ENV DJANGO_ENV=prod -RUN python manage.py makemigrations authosm -RUN python manage.py migrate +ENV OSM_SERVER=nbi +# ENV OSMUI_SQL_DATABASE_URI=mysql://root:secret@mysql:3306/lwui RUN python manage.py collectstatic --noinput - +RUN chmod +x /usr/share/osm-lightui/entrypoint.sh EXPOSE 80 -CMD ["supervisord", "-n"] +HEALTHCHECK --start-period=130s --interval=10s --timeout=5s --retries=12 \ + CMD curl --silent --fail localhost:80 || exit 1 + +CMD ["/usr/share/osm-lightui/entrypoint.sh"]