hometown-mastodon/Dockerfile

68 lines
1.7 KiB
Docker

FROM ghcr.io/linuxserver/baseimage-alpine-nginx:3.15
ARG BUILD_DATE
ARG VERSION
ARG HOMETOWN_VERSION
LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DATE}"
LABEL maintainer="Nikurasu"
ENV RAILS_ENV="production" \
NODE_ENV="production" \
PATH="${PATH}:/app/www/bin"
RUN \
apk add -U --upgrade --no-cache \
ffmpeg \
file \
icu-libs \
imagemagick \
libpq \
libidn \
nodejs \
ruby \
ruby-bundler \
yarn && \
apk add --no-cache --virtual=build-dependencies \
build-base \
g++ \
gcc \
icu-dev \
libidn-dev \
libpq-dev \
libxml2-dev \
libxslt-dev \
openssl-dev \
npm \
ruby-dev && \
echo "**** install mastodon ****" && \
mkdir -p /app/www && \
if [ -z ${HOMETOWN_VERSION+x} ]; then \
HOMETOWN_VERSION=$(curl -sX GET "https://api.github.com/repos/hometown-fork/hometown/releases/latest" \
| awk '/tag_name/{print $4;exit}' FS='[""]'); \
fi && \
curl -s -o \
/tmp/mastodon.tar.gz -L \
"https://github.com/hometown-fork/hometown/archive/refs/tags/${HOMETOWN_VERSION}.tar.gz" && \
tar xf \
/tmp/mastodon.tar.gz -C \
/app/www/ --strip-components=1 && \
cd /app/www && \
bundle config set --local deployment 'true' && \
bundle config set --local without 'development test' && \
bundle config set silence_root_warning true && \
bundle install -j"$(nproc)" && \
yarn install --pure-lockfile && \
OTP_SECRET=precompile_placeholder SECRET_KEY_BASE=precompile_placeholder rails assets:precompile && \
echo "**** cleanup ****" && \
apk del --purge \
build-dependencies && \
yarn cache clean && \
rm -rf \
/tmp/*
COPY root/ /
EXPOSE 80 443
VOLUME /config