Use non-root user for Dockerfiles of nonrtric products
[nonrtric.git] / information-coordinator-service / Dockerfile
1 #
2 # ============LICENSE_START=======================================================
3 #  Copyright (C) 2020 Nordix Foundation.
4 # ================================================================================
5 # Licensed under the Apache License, Version 2.0 (the "License");
6 # you may not use this file except in compliance with the License.
7 # You may obtain a copy of the License at
8 #
9 #      http://www.apache.org/licenses/LICENSE-2.0
10 #
11 # Unless required by applicable law or agreed to in writing, software
12 # distributed under the License is distributed on an "AS IS" BASIS,
13 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 # See the License for the specific language governing permissions and
15 # limitations under the License.
16 #
17 # SPDX-License-Identifier: Apache-2.0
18 # ============LICENSE_END=========================================================
19 #
20 FROM openjdk:11-jre-slim
21
22 ARG JAR
23
24 WORKDIR /opt/app/information-coordinator-service
25 RUN mkdir -p /var/log/information-coordinator-service
26 RUN mkdir -p /opt/app/information-coordinator-service/etc/cert/
27 RUN mkdir -p /var/information-coordinator-service
28
29 EXPOSE 8083 8434
30
31 ADD /config/application.yaml /opt/app/information-coordinator-service/config/application.yaml
32 ADD target/${JAR} /opt/app/information-coordinator-service/information-coordinator-service.jar
33 ADD /config/keystore.jks /opt/app/information-coordinator-service/etc/cert/keystore.jks
34 ADD /config/truststore.jks /opt/app/information-coordinator-service/etc/cert/truststore.jks
35
36 ARG user=nonrtric
37 ARG group=nonrtric
38
39 RUN groupadd $user && \
40     useradd -r -g $group $user
41 RUN chown -R $user:$group /opt/app/information-coordinator-service
42 RUN chown -R $user:$group /var/log/information-coordinator-service
43 RUN chown -R $user:$group /var/information-coordinator-service
44
45 USER ${user}
46
47 CMD ["java", "-jar", "/opt/app/information-coordinator-service/information-coordinator-service.jar"]
48
49
50
51