Advertisement
savicheval

Dockerfile

Nov 12th, 2021
1,172
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 2.13 KB | None | 0 0
  1. FROM debian:buster-slim
  2.  
  3. WORKDIR /usr/src/perl
  4.  
  5. COPY *.patch cpanfile /usr/src/perl/
  6.  
  7. RUN apt-get update \
  8.     && apt-get install -y --no-install-recommends \
  9.        bzip2 \
  10.        ca-certificates \
  11.        # cpio \
  12.        curl \
  13.        dpkg-dev \
  14.        # file \
  15.        gcc \
  16.        # g++ \
  17.        # libbz2-dev \
  18.        # libdb-dev \
  19.        libc6-dev \
  20.        # libgdbm-dev \
  21.        # liblzma-dev \
  22.        make \
  23.        netbase \
  24.        patch \
  25.        # procps \
  26.        # zlib1g-dev \
  27.        xz-utils \
  28.        python-pip \
  29.     && pip install s3cmd \
  30.     && apt-get remove -y python-pip \
  31.     && curl -SL https://www.cpan.org/src/5.0/perl-5.32.1.tar.xz -o perl-5.32.1.tar.xz \
  32.     && echo '57cc47c735c8300a8ce2fa0643507b44c4ae59012bfdad0121313db639e02309 *perl-5.32.1.tar.xz' | sha256sum -c - \
  33.     && tar --strip-components=1 -xaf perl-5.32.1.tar.xz -C /usr/src/perl \
  34.     && rm perl-5.32.1.tar.xz \
  35.     && cat *.patch | patch -p1 \
  36.     && gnuArch="$(dpkg-architecture --query DEB_BUILD_GNU_TYPE)" \
  37.     && archBits="$(dpkg-architecture --query DEB_BUILD_ARCH_BITS)" \
  38.     && archFlag="$([ "$archBits" = '64' ] && echo '-Duse64bitall' || echo '-Duse64bitint')" \
  39.     && ./Configure -Darchname="$gnuArch" "$archFlag" -Duseshrplib -Dvendorprefix=/usr/local  -des \
  40.     && make -j$(nproc) \
  41.     && TEST_JOBS=$(nproc) make test_harness \
  42.     && make install \
  43.     && cd /usr/src \
  44.     && curl -LO https://www.cpan.org/authors/id/M/MI/MIYAGAWA/App-cpanminus-1.7044.tar.gz \
  45.     && echo '9b60767fe40752ef7a9d3f13f19060a63389a5c23acc3e9827e19b75500f81f3 *App-cpanminus-1.7044.tar.gz' | sha256sum -c - \
  46.     && tar -xzf App-cpanminus-1.7044.tar.gz && cd App-cpanminus-1.7044 && perl bin/cpanm . \
  47.     && cd /usr/src/perl && cpanm . && cd /root \
  48.     && savedPackages="make netbase" \
  49.     && apt-mark auto '.*' > /dev/null \
  50.     && apt-mark manual $savedPackages \
  51.     && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false \
  52.     && rm -fr /var/cache/apt/* /var/lib/apt/lists/* \
  53.     && rm -fr ./cpanm /root/.cpanm /usr/src/perl /usr/src/App-cpanminus-1.7044* /tmp/*
  54.  
  55. WORKDIR /
  56.  
  57. CMD ["perl5.32.1","-de0"]
  58.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement