From c7574e8661d62982516ac21c661964b49adbc850 Mon Sep 17 00:00:00 2001 From: Angristan Date: Fri, 23 Mar 2018 14:33:51 +0100 Subject: [PATCH] Run the installation as the peertube user inside the Docker image (#385) * Run the installation as the peertube user * Run the installation as the peertube user --- support/docker/production/Dockerfile.alpine | 24 +++++++++++------- support/docker/production/Dockerfile.stretch | 26 ++++++++++++-------- 2 files changed, 31 insertions(+), 19 deletions(-) diff --git a/support/docker/production/Dockerfile.alpine b/support/docker/production/Dockerfile.alpine index 8ce0bb98b..58a49d4a0 100644 --- a/support/docker/production/Dockerfile.alpine +++ b/support/docker/production/Dockerfile.alpine @@ -4,19 +4,25 @@ FROM node:8-alpine RUN apk add --no-cache ffmpeg openssl bash make g++ git \ && apk add --no-cache --repository https://dl-3.alpinelinux.org/alpine/edge/testing/ vips-dev fftw-dev -RUN git clone -b master https://github.com/Chocobozzz/PeerTube /app - -WORKDIR /app -RUN bash -c 'yarn install --pure-lockfile && npm run build' - -# Configure the application +# Add peertube user RUN addgroup -g 991 peertube \ - && adduser -D -u 991 -G peertube -h /data peertube -USER peertube + && adduser -D -u 991 -G peertube peertube +# Download the latest version +RUN git clone https://github.com/Chocobozzz/PeerTube /app \ + && chown -R peertube:peertube /app + +# Install PeerTube +USER peertube +WORKDIR /app + +RUN yarn install --pure-lockfile \ + && npm run build + +# Configure PeerTube RUN cp /app/config/default.yaml /app/support/docker/production/config/default.yaml ENV NODE_ENV production -ENV NODE_CONFIG_DIR /app/support/docker/production/config/ +ENV NODE_CONFIG_DIR /app/support/docker/production/config # Run the application CMD ["npm", "start"] diff --git a/support/docker/production/Dockerfile.stretch b/support/docker/production/Dockerfile.stretch index c616194e6..b1905b3a8 100644 --- a/support/docker/production/Dockerfile.stretch +++ b/support/docker/production/Dockerfile.stretch @@ -2,19 +2,25 @@ FROM node:8-stretch # Install dependencies RUN apt-get update \ - && apt-get -y install ffmpeg \ - && rm /var/lib/apt/lists/* -fR + && apt-get -y install ffmpeg \ + && rm /var/lib/apt/lists/* -fR -RUN git clone -b master https://github.com/Chocobozzz/PeerTube /app - -WORKDIR /app -RUN yarn install --pure-lockfile && npm run build - -# Configure the application +# Add peertube user RUN groupadd -g 991 peertube \ - && useradd -u 991 -g peertube -d /data -m peertube -USER peertube + && useradd -u 991 -g peertube -m peertube +# Download the latest version +RUN git clone https://github.com/Chocobozzz/PeerTube /app \ + && chown -R peertube:peertube /app + +# Install PeerTube +USER peertube +WORKDIR /app + +RUN yarn install --pure-lockfile \ + && npm run build + +# Configure PeerTube RUN cp /app/config/default.yaml /app/support/docker/production/config/default.yaml ENV NODE_ENV production ENV NODE_CONFIG_DIR /app/support/docker/production/config