-
Notifications
You must be signed in to change notification settings - Fork 18
/
Copy pathDockerfile.rpm
42 lines (32 loc) · 1.13 KB
/
Dockerfile.rpm
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
FROM oraclelinux:8 AS rpmbuild
# set working directory
WORKDIR /app
# add mongodb repo
COPY conf/mongodb-org-3.6.repo /etc/yum.repos.d/mongodb-org-3.6.repo
# add globalnoc and epel repos
RUN dnf install -y \
https://build.grnoc.iu.edu/repo/rhel/8/x86_64/globalnoc-release-8-1.el8.noarch.rpm \
oracle-epel-release-el8
# enable additional ol8 repos
RUN yum-config-manager --enable \
ol8_appstream ol8_baseos_latest ol8_codeready_builder \
ol8_developer_EPEL ol8_developer_EPEL_modular
# run makecache
RUN dnf makecache
# install external app dependencies
RUN dnf install -y \
sphinx rpm-build httpd mod_perl mod_perl-devel gcc wget mongodb-org-shell
# install globalnoc app dependencies
RUN dnf install -y \
perl-GRNOC-CLI perl-GRNOC-Config perl-GRNOC-Counter \
perl-GRNOC-LockFile perl-GRNOC-Log perl-GRNOC-WebService \
perl-GRNOC-WebService-Client perl-GRNOC-TSDS-Aggregate-Histogram
# install venv dependencies
RUN dnf install -y \
openssl-devel perl-App-cpanminus expat-devel
RUN cpanm Carton
# copy everything in
COPY . /app
# build & install rpm
RUN chmod 777 /app/entrypoint.sh
ENTRYPOINT /app/entrypoint.sh