Run the installation as the peertube user inside the Docker image (#385)
authorAngristan <Angristan@users.noreply.github.com>
Fri, 23 Mar 2018 13:33:51 +0000 (14:33 +0100)
committerChocobozzz <me@florianbigard.com>
Fri, 23 Mar 2018 13:33:51 +0000 (14:33 +0100)
* Run the installation as the peertube user

* Run the installation as the peertube user

support/docker/production/Dockerfile.alpine
support/docker/production/Dockerfile.stretch

index 8ce0bb98b31684c3946a745fdc560f2916f3e104..58a49d4a0ca4a89dbbfadde6bf509752bd166ad3 100644 (file)
@@ -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
+# Add peertube user
+RUN addgroup -g 991 peertube \
+    && adduser -D -u 991 -G peertube peertube
 
-WORKDIR /app
-RUN bash -c 'yarn install --pure-lockfile && npm run build'
+# Download the latest version
+RUN git clone https://github.com/Chocobozzz/PeerTube /app \
+    && chown -R peertube:peertube /app
 
-# Configure the application
-RUN addgroup -g 991 peertube \
- && adduser -D -u 991 -G peertube -h /data peertube
+# 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"]
index c616194e629205898f05afe91bdf993569e8bf74..b1905b3a8ae84e1df0fb44e3420fe673a70f1530 100644 (file)
@@ -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
+# Add peertube user
+RUN groupadd -g 991 peertube \
+    && useradd -u 991 -g peertube -m peertube
 
-WORKDIR /app
-RUN yarn install --pure-lockfile && npm run build
+# Download the latest version
+RUN git clone https://github.com/Chocobozzz/PeerTube /app \
+    && chown -R peertube:peertube /app
 
-# Configure the application
-RUN groupadd -g 991 peertube \
- && useradd -u 991 -g peertube -d /data -m peertube
+# 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