X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=docker%2FKeystone%2FDockerfile;h=b429237db707cbdfd722c0f62ecf94ae3e41ed4a;hb=38e4926c6f1d56df6690c8e3689a0e4bf1ce716a;hp=445111699eff5f749748c18a021565dcd83752f1;hpb=7751aba725b29474b8ce039aeac98634c52ee6a6;p=osm%2Fdevops.git diff --git a/docker/Keystone/Dockerfile b/docker/Keystone/Dockerfile index 44511169..b429237d 100644 --- a/docker/Keystone/Dockerfile +++ b/docker/Keystone/Dockerfile @@ -1,28 +1,32 @@ -# Copyright 2021 Whitestack, LLC +####################################################################################### +# 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. You may obtain -# a copy of the License at +# 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 +# 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. -# -# For those usages not covered by the Apache License, Version 2.0 please -# contact: fbravo@whitestack.com or glavado@whitestack.com -## - +# 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:20.04 +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 + EXPOSE 5000 -WORKDIR /keystone +WORKDIR /app -COPY scripts/start.sh /keystone/start.sh +COPY scripts/start.sh /app/start.sh RUN DEBIAN_FRONTEND=noninteractive apt-get update && \ DEBIAN_FRONTEND=noninteractive apt-get upgrade -y && \ @@ -33,7 +37,7 @@ RUN DEBIAN_FRONTEND=noninteractive apt-get update && \ DEBIAN_FRONTEND=noninteractive apt-get dist-upgrade -y && \ DEBIAN_FRONTEND=noninteractive apt-get install -y \ apache2=2.4.* \ - keystone=2:18.0.* \ + keystone=2:18.1.* \ libapache2-mod-wsgi-py3=4.6.* \ python3-pip=20.0.* \ build-essential=12.8* \ @@ -53,7 +57,33 @@ RUN DEBIAN_FRONTEND=noninteractive apt-get update && \ rm -rf /var/lib/apt/lists/* && \ chmod +x start.sh -RUN pip3 install -U pip==21.3.1 && pip3 install python-ldap==3.2.0 ldappool==3.0.0 +RUN pip3 install -U pip==21.3.1 && \ + pip3 install python-ldap==3.2.0 ldappool==3.0.0 python-openstackclient==5.7.0 + +# Creating the user for the app +RUN groupadd -g 1000 appuser && \ + useradd -u 1000 -g 1000 -d /app appuser && \ + usermod -a -G keystone appuser && \ + usermod -a -G adm appuser && \ + chown -R appuser:appuser /app && \ + chown root:keystone /etc/keystone && \ + chmod 770 /etc/keystone && \ + chown root:keystone /etc/ssl/certs && \ + chmod 770 /etc/ssl/certs && \ + chown root:keystone /etc/apache2/apache2.conf && \ + chmod 664 /etc/apache2/apache2.conf && \ + sed -i 's/Listen 80/Listen 8080/g' /etc/apache2/ports.conf && \ + chown root:keystone /var/spool && \ + chmod 775 /var/spool && \ + chmod 770 /var/log/apache2 && \ + chmod 660 /var/log/apache2/* && \ + chmod 770 /var/log/keystone && \ + chown root:keystone /var/run/apache2 && \ + chmod 775 /var/run/apache2 && \ + mkdir -p /etc/sudoers.d && \ + echo "%appuser ALL= NOPASSWD: /sbin/service apache2 *" > /etc/sudoers.d/appuser + +USER appuser # database ENV DB_HOST keystone-db