blob: 1b4a01c9bd74e8a3b75468f2b2504f42273d220b [file] [log] [blame]
magnussonl2b0e2d72020-02-04 10:52:46 +01001# Copyright 2020 ArctosLabs Scandinavia AB
2# *************************************************************
3
4# This file is part of OSM Placement module
5# All Rights Reserved to ArctosLabs Scandinavia AB
6
7# Licensed under the Apache License, Version 2.0 (the "License"); you may
8# not use this file except in compliance with the License. You may obtain
9# a copy of the License at
10
11# http://www.apache.org/licenses/LICENSE-2.0
12
13# Unless required by applicable law or agreed to in writing, software
14# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
15# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
16# License for the specific language governing permissions and limitations
17# under the License.
18FROM ubuntu:18.04
19
20LABEL authors="Martin Björklund, Lars-Göran Magnusson"
21
22RUN apt-get --yes update \
23 && apt-get --yes install git python3 python3-pip libgl1-mesa-glx \
24 && pip3 install pip==9.0.3
25
26COPY requirements.txt /pla/requirements.txt
27
28RUN pip3 install -r /pla/requirements.txt
29
30ADD https://github.com/MiniZinc/MiniZincIDE/releases/download/2.3.1/MiniZincIDE-2.3.1-bundle-linux-x86_64.tgz /minizinc.tgz
31#COPY MiniZincIDE-2.3.1-bundle-linux-x86_64.tgz /minizinc.tgz
32
33RUN tar -zxf /minizinc.tgz && \
34 mv /MiniZincIDE-2.3.1-bundle-linux /minizinc
35
36RUN mkdir /entry_data \
37 && mkdir /entry_data/mzn-lib \
38 && ln -s /entry_data/mzn-lib /minizinc/share/minizinc/exec
39
40COPY . /pla
41
42RUN pip3 install /pla
43
44RUN mkdir /placement
45
46ENV OSMPLA_MESSAGE_DRIVER kafka
47ENV OSMPLA_MESSAGE_HOST kafka
48ENV OSMPLA_MESSAGE_PORT 9092
49
50ENV OSMPLA_DATABASE_DRIVER mongo
51ENV OSMPLA_DATABASE_URI mongodb://mongo:27017
52
53ENV OSMPLA_SQL_DATABASE_URI sqlite:///pla_sqlite.db
54ENV OSMPLA_GLOBAL_REQUEST_TIMEOUT 10
55ENV OSMPLA_GLOBAL_LOGLEVEL INFO
56ENV OSMPLA_VCA_HOST localhost
57ENV OSMPLA_VCA_SECRET secret
58ENV OSMPLA_VCA_USER admin
59ENV OSMPLA_DATABASE_COMMONKEY changeme
60
61ENV FZNEXEC "/entry_data/fzn-exec"
62ENV PATH "/minizinc/bin:${PATH}"
63ENV LD_LIBRARY_PATH "/minizinc/lib:${LD_LIBRARY_PATH}"
64
65EXPOSE 1234
66
67#HEALTHCHECK --interval=5s --timeout=2s --retries=12 \
68# CMD osm-pla-healthcheck || exit 1
69
70CMD /bin/bash pla/docker/scripts/start.sh
71
72#WORKDIR /minizinc