add pleroma_source_selfbuilt image for patching pleroma
This commit is contained in:
parent
66f16288fc
commit
8c9f487412
3 changed files with 63 additions and 1 deletions
46
Dockerfile.pleroma-source
Normal file
46
Dockerfile.pleroma-source
Normal file
|
@ -0,0 +1,46 @@
|
|||
FROM elixir:1.11.4-alpine
|
||||
|
||||
ARG PLEROMA_VER=develop
|
||||
ARG UID=911
|
||||
ARG GID=911
|
||||
ENV MIX_ENV=prod
|
||||
|
||||
RUN echo "http://nl.alpinelinux.org/alpine/latest-stable/community" >> /etc/apk/repositories \
|
||||
&& apk update \
|
||||
&& apk add git gcc g++ musl-dev make cmake file-dev \
|
||||
exiftool imagemagick libmagic ncurses postgresql-client ffmpeg
|
||||
|
||||
RUN addgroup -g ${GID} pleroma \
|
||||
&& adduser -h /pleroma -s /bin/false -D -G pleroma -u ${UID} pleroma
|
||||
|
||||
ARG DATA=/var/lib/pleroma
|
||||
RUN mkdir -p /etc/pleroma \
|
||||
&& chown -R pleroma /etc/pleroma \
|
||||
&& mkdir -p ${DATA}/uploads \
|
||||
&& mkdir -p ${DATA}/static \
|
||||
&& chown -R pleroma ${DATA}
|
||||
|
||||
USER pleroma
|
||||
WORKDIR /pleroma
|
||||
|
||||
RUN git clone -b develop https://git.pleroma.social/pleroma/pleroma.git /pleroma \
|
||||
&& git checkout ${PLEROMA_VER}
|
||||
|
||||
USER root
|
||||
COPY ./minica.pem /usr/local/share/ca-certificates/minica.crt
|
||||
RUN update-ca-certificates
|
||||
|
||||
USER pleroma
|
||||
|
||||
RUN mix local.hex --force \
|
||||
&& mix local.rebar --force \
|
||||
&& mix deps.get --only prod \
|
||||
&& mix deps.compile --only prod \
|
||||
&& mix compile --only prod
|
||||
|
||||
COPY ./files/pleroma.exs config/prod.secret.exs
|
||||
COPY ./files/pleroma_source_entrypoint.sh docker-entrypoint.sh
|
||||
|
||||
EXPOSE 4000
|
||||
|
||||
ENTRYPOINT ["/pleroma/docker-entrypoint.sh"]
|
14
files/pleroma_source_entrypoint.sh
Executable file
14
files/pleroma_source_entrypoint.sh
Executable file
|
@ -0,0 +1,14 @@
|
|||
#!/bin/ash
|
||||
|
||||
set -eux
|
||||
|
||||
echo "-- Waiting for database..."
|
||||
while ! pg_isready -U ${DB_USER:-pleroma} -d postgres://${DB_HOST:-db}:${DB_PORT:-5432}/${DB_NAME:-pleroma} -t 1; do
|
||||
sleep 1s
|
||||
done
|
||||
|
||||
echo "-- Running migrations..."
|
||||
mix ecto.migrate
|
||||
|
||||
echo "-- Starting!"
|
||||
mix phx.server
|
|
@ -2,9 +2,10 @@
|
|||
#
|
||||
# setup pleroma db
|
||||
|
||||
set -eux
|
||||
docker-compose up -d pleroma_db
|
||||
docker-compose up -d pleroma2_db
|
||||
sleep 10
|
||||
sleep 10 # waiting for databases to warm up
|
||||
docker-compose exec -i pleroma_db psql -U pleroma -c "CREATE EXTENSION IF NOT EXISTS citext;"
|
||||
docker-compose exec -i pleroma_db psql -U pleroma -c "CREATE EXTENSION IF NOT EXISTS pg_trgm;"
|
||||
docker-compose exec -i pleroma_db psql -U pleroma -c 'CREATE EXTENSION IF NOT EXISTS "uuid-ossp";'
|
||||
|
@ -14,3 +15,4 @@ docker-compose exec -i pleroma2_db psql -U pleroma -c 'CREATE EXTENSION IF NOT E
|
|||
docker-compose down
|
||||
|
||||
docker buildx build -t pleroma_selfbuilt -f ./Dockerfile.pleroma .
|
||||
docker buildx build -t pleroma_source_selfbuilt -f ./Dockerfile.pleroma-source .
|
||||
|
|
Loading…
Reference in a new issue