blob: b5bd07e81551011cd2a02fe872399bce50e99468 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
|
FROM archlinux/base
MAINTAINER in-silico toxicology Gmbh
RUN pacman-db-upgrade
RUN pacman -Syyu --noconfirm
RUN pacman -S --noconfirm \
base-devel \
boost-libs \
cmake \
eigen3 \
fontconfig \
gcc-fortran \
git \
gsl \
jre10-openjdk-headless \
r \
ruby \
swig \
python-pip \
catdoc \
wget
RUN pacman -Scc --noconfirm
RUN R -e "install.packages('Rserve', repos='http://rforge.net/')"
RUN pip install xlsx2csv
RUN echo 'gem: --no-document' > /etc/gemrc
RUN useradd -ms /bin/bash ist
USER ist
WORKDIR /home/ist
RUN mkdir data
# mongodb has been removed from main repositories, AUR installation
RUN mkdir src
WORKDIR /home/ist/src
RUN wget https://aur.archlinux.org/cgit/aur.git/snapshot/mongodb-bin.tar.gz
RUN tar -xvzf mongodb-bin.tar.gz
WORKDIR /home/ist/src/mongodb-bin
RUN makepkg -s --noconfirm
# rest api swagger gui
WORKDIR /home/ist
RUN git clone https://github.com/swagger-api/swagger-ui.git
COPY swagger.html /home/ist/swagger-ui/dist/index.html
# start script
COPY start.sh /home/ist/start.sh
# mongodb installation requires root
USER root
RUN pacman -U --noconfirm /home/ist/src/mongodb-bin/mongodb-bin*.pkg.tar.xz
# install lazar-gui gem
# lazar gem (required from lazar-gui) needs mongodb
RUN gem install lazar-gui
# change owners (temporary workaround)
RUN chown ist `ls -d $(gem environment gemdir)/gems/lazar-gui-*`/public
RUN chown ist `ls -d $(gem environment gemdir)/gems/lazar-gui-*`/tmp
RUN chown ist `ls -d $(gem environment gemdir)/gems/lazar-gui-*`/api
RUN chown ist `ls -d $(gem environment gemdir)/gems/lazar-gui-*`/api/api.json
USER ist
RUN rm -r /home/ist/src
# swagger links
RUN ln -s /home/ist/swagger-ui/dist/swagger-ui-bundle.js `ls -d $(gem environment gemdir)/gems/lazar-gui-*`/public/swagger-ui-bundle.js
RUN ln -s /home/ist/swagger-ui/dist/swagger-ui-standalone-preset.js `ls -d $(gem environment gemdir)/gems/lazar-gui-*`/public/swagger-ui-standalone-preset.js
RUN ln -s /home/ist/swagger-ui/dist/swagger-ui.css `ls -d $(gem environment gemdir)/gems/lazar-gui-*`/public/swagger-ui.css
ENTRYPOINT ["/home/ist/start.sh"]
|