]> cat aescling's git repositories - mastodon.git/blobdiff - Dockerfile
Bump lodash from 4.17.20 to 4.17.21 (#15774)
[mastodon.git] / Dockerfile
index a22efe67234eddf32dc6f1b38469befce7151d28..84e6435f3ee715633c8c29ef6f5aa0442e2fa40c 100644 (file)
@@ -1,11 +1,11 @@
-FROM ubuntu:18.04 as build-dep
+FROM ubuntu:20.04 as build-dep
 
 # Use bash for the shell
-SHELL ["bash", "-c"]
+SHELL ["/usr/bin/bash", "-c"]
 
 # Install Node v12 (LTS)
-ENV NODE_VER="12.14.0"  
-RUN    ARCH= && \
+ENV NODE_VER="12.20.1"
+RUN ARCH= && \
     dpkgArch="$(dpkg --print-architecture)" && \
   case "${dpkgArch##*-}" in \
     amd64) ARCH='x64';; \
@@ -36,10 +36,11 @@ RUN apt update && \
        ./autogen.sh && \
        ./configure --prefix=/opt/jemalloc && \
        make -j$(nproc) > /dev/null && \
-       make install_bin install_include install_lib
+       make install_bin install_include install_lib && \
+       cd .. && rm -rf jemalloc-$JE_VER $JE_VER.tar.gz
 
-# Install ruby
-ENV RUBY_VER="2.6.5"
+# Install Ruby
+ENV RUBY_VER="2.7.2"
 ENV CPPFLAGS="-I/opt/jemalloc/include"
 ENV LDFLAGS="-L/opt/jemalloc/lib/"
 RUN apt update && \
@@ -56,7 +57,8 @@ RUN apt update && \
          --disable-install-doc && \
        ln -s /opt/jemalloc/lib/* /usr/lib/ && \
        make -j$(nproc) > /dev/null && \
-       make install
+       make install && \
+       cd .. && rm -rf ruby-$RUBY_VER.tar.gz ruby-$RUBY_VER
 
 ENV PATH="${PATH}:/opt/ruby/bin:/opt/node/bin"
 
@@ -74,7 +76,7 @@ RUN cd /opt/mastodon && \
        bundle install -j$(nproc) && \
        yarn install --pure-lockfile
 
-FROM ubuntu:18.04
+FROM ubuntu:20.04
 
 # Copy over all the langs needed for runtime
 COPY --from=build-dep /opt/node /opt/node
@@ -98,8 +100,8 @@ RUN apt update && \
 # Install mastodon runtime deps
 RUN apt -y --no-install-recommends install \
          libssl1.1 libpq5 imagemagick ffmpeg \
-         libicu60 libprotobuf10 libidn11 libyaml-0-2 \
-         file ca-certificates tzdata libreadline7 && \
+         libicu66 libprotobuf17 libidn11 libyaml-0-2 \
+         file ca-certificates tzdata libreadline8 && \
        apt -y install gcc && \
        ln -s /opt/mastodon /mastodon && \
        gem install bundler && \
@@ -107,11 +109,14 @@ RUN apt -y --no-install-recommends install \
        rm -rf /var/lib/apt/lists/*
 
 # Add tini
-ENV TINI_VERSION="0.18.0"
-ENV TINI_SUM="12d20136605531b09a2c2dac02ccee85e1b874eb322ef6baf7561cd93f93c855"
-ADD https://github.com/krallin/tini/releases/download/v${TINI_VERSION}/tini /tini
-RUN echo "$TINI_SUM tini" | sha256sum -c -
-RUN chmod +x /tini
+ENV TINI_VERSION="0.19.0"
+RUN dpkgArch="$(dpkg --print-architecture)" && \
+       ARCH=$dpkgArch && \
+       wget https://github.com/krallin/tini/releases/download/v${TINI_VERSION}/tini-$ARCH \
+       https://github.com/krallin/tini/releases/download/v${TINI_VERSION}/tini-$ARCH.sha256sum && \
+       cat tini-$ARCH.sha256sum | sha256sum -c - && \
+       mv tini-$ARCH /tini && rm tini-$ARCH.sha256sum && \
+       chmod +x /tini
 
 # Copy over mastodon source, and dependencies from building, and set permissions
 COPY --chown=mastodon:mastodon . /opt/mastodon
This page took 0.039561 seconds and 3 git commands to generate.