Skip to content

Commit 2d3bab8

Browse files
authored
Merge pull request #1 from trussworks/mb-13103-python3.8
[MB-13103] fix virus database update failure
2 parents 0e86c59 + e86a0dc commit 2d3bab8

File tree

1 file changed

+39
-21
lines changed

1 file changed

+39
-21
lines changed

Dockerfile

Lines changed: 39 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -11,34 +11,52 @@ COPY ./*.py /opt/app/
1111
COPY requirements.txt /opt/app/requirements.txt
1212

1313
# Install packages
14-
RUN yum update -y
15-
RUN yum install -y cpio python3-pip yum-utils zip unzip less
16-
RUN yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
17-
18-
# This had --no-cache-dir, tracing through multiple tickets led to a problem in wheel
19-
RUN pip3 install -r requirements.txt
20-
RUN rm -rf /root/.cache/pip
14+
RUN yum update -y && \
15+
amazon-linux-extras install epel -y && \
16+
yum install -y cpio yum-utils tar.x86_64 gzip zip python3-pip shadow-utils.x86_64 && \
17+
pip3 install -r requirements.txt && \
18+
rm -rf /root/.cache/pip
2119

2220
# Download libraries we need to run in lambda
2321
WORKDIR /tmp
24-
RUN yumdownloader -x \*i686 --archlist=x86_64 clamav clamav-lib clamav-update json-c pcre2 libprelude gnutls libtasn1 lib64nettle nettle
25-
RUN rpm2cpio clamav-0*.rpm | cpio -idmv
26-
RUN rpm2cpio clamav-lib*.rpm | cpio -idmv
27-
RUN rpm2cpio clamav-update*.rpm | cpio -idmv
28-
RUN rpm2cpio json-c*.rpm | cpio -idmv
29-
RUN rpm2cpio pcre*.rpm | cpio -idmv
30-
RUN rpm2cpio gnutls* | cpio -idmv
31-
RUN rpm2cpio nettle* | cpio -idmv
32-
RUN rpm2cpio lib* | cpio -idmv
33-
RUN rpm2cpio *.rpm | cpio -idmv
34-
RUN rpm2cpio libtasn1* | cpio -idmv
22+
RUN yumdownloader -x \*i686 --archlist=x86_64 \
23+
clamav clamav-lib clamav-update json-c \
24+
pcre2 libtool-ltdl libxml2 bzip2-libs \
25+
xz-libs libprelude gnutls nettle
26+
27+
RUN rpm2cpio clamav-0*.rpm | cpio -vimd && \
28+
rpm2cpio clamav-lib*.rpm | cpio -vimd && \
29+
rpm2cpio clamav-update*.rpm | cpio -vimd && \
30+
rpm2cpio json-c*.rpm | cpio -vimd && \
31+
rpm2cpio pcre*.rpm | cpio -vimd && \
32+
rpm2cpio libtool-ltdl*.rpm | cpio -vimd && \
33+
rpm2cpio libxml2*.rpm | cpio -vimd && \
34+
rpm2cpio bzip2-libs*.rpm | cpio -vimd && \
35+
rpm2cpio xz-libs*.rpm | cpio -vimd && \
36+
rpm2cpio libprelude*.rpm | cpio -vimd && \
37+
rpm2cpio gnutls*.rpm | cpio -vimd && \
38+
rpm2cpio nettle*.rpm | cpio -vimd
39+
3540

3641
# Copy over the binaries and libraries
37-
RUN cp /tmp/usr/bin/clamscan /tmp/usr/bin/freshclam /tmp/usr/lib64/* /opt/app/bin/
42+
RUN cp /tmp/usr/bin/clamscan \
43+
/tmp/usr/bin/freshclam \
44+
/tmp/usr/lib64/* \
45+
/usr/lib64/libpcre.so.1 \
46+
/opt/app/bin/
3847

3948
# Fix the freshclam.conf settings
40-
RUN echo "DatabaseMirror database.clamav.net" > /opt/app/bin/freshclam.conf
41-
RUN echo "CompressLocalDatabase yes" >> /opt/app/bin/freshclam.conf
49+
RUN echo "DatabaseMirror database.clamav.net" > /opt/app/bin/freshclam.conf && \
50+
echo "CompressLocalDatabase yes" >> /opt/app/bin/freshclam.conf && \
51+
echo "ScriptedUpdates no" >> /opt/app/bin/freshclam.conf && \
52+
echo "DatabaseDirectory /var/lib/clamav" >> /opt/app/bin/freshclam.conf
53+
54+
RUN groupadd clamav
55+
RUN useradd -g clamav -s /bin/false -c "Clam Antivirus" clamav
56+
RUN useradd -g clamav -s /bin/false -c "Clam Antivirus" clamupdate
57+
58+
ENV LD_LIBRARY_PATH=/opt/app/bin
59+
RUN ldconfig
4260

4361
# Create the zip file
4462
WORKDIR /opt/app

0 commit comments

Comments
 (0)