Skip to content

Commit 6a3be1c

Browse files
Add a Containerfile for building an Alma9 based image
1 parent 5dc54b2 commit 6a3be1c

1 file changed

Lines changed: 51 additions & 0 deletions

File tree

docker/Containerfile

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
FROM almalinux:9
2+
3+
# Add some optional repo packages to get older stuff
4+
RUN dnf -y install 'dnf-command(config-manager)'\
5+
&& dnf clean all \
6+
&& rm -rf /var/cache/dnf
7+
RUN dnf config-manager --set-enabled crb
8+
RUN dnf install -y epel-release \
9+
&& dnf clean all \
10+
&& rm -rf /var/cache/dnf
11+
12+
RUN dnf upgrade -y && \
13+
dnf clean all && \
14+
rm -rf /var/cache/yum
15+
16+
RUN dnf install -y httpd mod_ssl \
17+
sudo git \
18+
sendmail sendmail-cf python pip python-pip \
19+
&& yum clean all \
20+
&& rm -rf /var/cache/yum
21+
22+
RUN dnf install -y perl perl-CPAN perl-CGI perl-DBI perl-DBD-MySQL perl-DateTime perl-File-MimeInfo \
23+
perl-MailTools perl-XML-Twig perl-libxml-perl perl-DateTime-Format-ICal perl-libwww-perl \
24+
perl-Digest-SHA1 perl-XML-Simple \
25+
&& yum clean all \
26+
&& rm -rf /var/cache/yum
27+
28+
RUN dnf -y install https://www.rpmfind.net/linux/almalinux/9.7/devel/x86_64/os/Packages/perl-Class-ReturnValue-0.55-38.el9.noarch.rpm https://www.rpmfind.net/linux/almalinux/9.7/devel/x86_64/os/Packages/perl-Data-ICal-0.24-7.el9.noarch.rpm \
29+
&& dnf clean all \
30+
&& rm -rf /var/cache/dnf
31+
32+
# Jobber is a lightweight cron replacement written in Go
33+
RUN rpm -i https://github.com/dshearer/jobber/releases/download/v1.4.4/jobber-1.4.4-1.el8.x86_64.rpm
34+
ADD dot-jobber.yaml /root/.jobber
35+
36+
# j2cli is used for templating config files which will be useful for passing environment variables
37+
#RUN python3 -m pip install --no-cache-dir --upgrade pip
38+
#RUN python3 -m pip install --no-cache-dir --upgrade setuptools
39+
RUN python3 -m pip install --no-cache-dir j2cli
40+
41+
# This file was generated by running CPAN once in "manual" not "local::lib" mode
42+
ADD MyConfig.pm /root/.cpan/CPAN/MyConfig.pm
43+
RUN sudo cpan -i CGI::Untaint
44+
45+
# Get DocDB software and install it
46+
RUN git clone https://github.com/ericvaandering/DocDB.git
47+
RUN mkdir -p /var/www/cgi-bin/DocDB && cp DocDB/DocDB/cgi/* /var/www/cgi-bin/DocDB
48+
RUN mkdir -p /var/www/html/DocDB/Static/ && cp -R /DocDB/DocDB/html/css/ /DocDB/DocDB/html/js/ /DocDB/DocDB/html/img/ /var/www/html/DocDB/Static/
49+
50+
ADD docker-entrypoint.sh /
51+
ENTRYPOINT ["/docker-entrypoint.sh"]

0 commit comments

Comments
 (0)