ddb23edf3ba5d9f2dfcbe52a47fc4231f5fcb988
[nonrtric/plt/sme.git] / servicemanager / Dockerfile
1 #==================================================================================
2 #   Copyright (C) 2024: OpenInfra Foundation Europe
3 #
4 #   Licensed under the Apache License, Version 2.0 (the "License");
5 #   you may not use this file except in compliance with the License.
6 #   You may obtain a copy of the License at
7 #
8 #       http://www.apache.org/licenses/LICENSE-2.0
9 #
10 #   Unless required by applicable law or agreed to in writing, software
11 #   distributed under the License is distributed on an "AS IS" BASIS,
12 #   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 #   See the License for the specific language governing permissions and
14 #   limitations under the License.
15 #
16 #==================================================================================
17
18 ##
19 ## Build
20 ##
21 FROM nexus3.o-ran-sc.org:10001/golang:1.19.2-bullseye AS build
22
23 WORKDIR /app
24
25 COPY go.mod .
26 COPY go.sum .
27 RUN go mod download
28
29 COPY . .
30 RUN go build -o /servicemanager
31
32 ##
33 ## Deploy
34 ##
35
36 FROM ubuntu:22.04
37
38 # We use the /app directory as this is where our servicemanager expects to find its .env file.
39 RUN mkdir -p /app
40 WORKDIR /app
41
42 ## Copy from "build" stage
43 COPY --from=build /servicemanager .
44
45 ENTRYPOINT ["/app/servicemanager"]