From 2985c6a051563cab86fcb51c6bd2ecc12becde4e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thomas=20Gl=C3=A4=C3=9Fle?= Date: Sun, 9 Apr 2017 11:36:33 +0200 Subject: [PATCH] Cleanup Dockerfile, thanks to @kpcyrd --- Dockerfile | 25 +++++-------------------- container-start.sh | 12 ++++++------ 2 files changed, 11 insertions(+), 26 deletions(-) mode change 100644 => 100755 container-start.sh diff --git a/Dockerfile b/Dockerfile index bb249cce1..96a5ff520 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,28 +1,13 @@ -FROM node:6 - -ARG VERSION=0.3.0 - -# Download stable version -# RUN wget https://github.com/xwiki-labs/cryptpad/archive /${VERSION}.tar.gz -O /cryptpad.tar.gz \ -# && mkdir -p /cryptpad \ -# && tar -xzf /cryptpad.tar.gz -C /cryptpad --strip-components=1 \ -# && rm /cryptpad.tar.gz - -# Download from github -# RUN git clone https://github.com/xwiki-labs/cryptpad.git - -# Add code directly -ADD . /cryptpad +FROM node:6-alpine +COPY . /cryptpad WORKDIR /cryptpad -RUN npm install \ +RUN apk add --no-cache git tini \ + && npm install \ && npm install -g bower \ && bower install --allow-root -ADD container-start.sh /container-start.sh -RUN chmod u+x /container-start.sh - EXPOSE 3000 VOLUME /cryptpad/datastore @@ -32,4 +17,4 @@ ENV USE_SSL=false ENV STORAGE='./storage/file' ENV LOG_TO_STDOUT=true -CMD /container-start.sh +CMD ["/sbin/tini", "--", "/cryptpad/container-start.sh"] diff --git a/container-start.sh b/container-start.sh old mode 100644 new mode 100755 index 60ba6de76..89f3be1f1 --- a/container-start.sh +++ b/container-start.sh @@ -1,22 +1,22 @@ -#!/bin/bash +#!/bin/sh # Creating customize folder mkdir -p customize -[[ ! "$(ls -A customize)" ]] && echo "Creating customize folder" \ +[ -z "$(ls -A customize)" ] && echo "Creating customize folder" \ && cp -R customize.dist/* customize/ \ && cp config.js.dist customize/config.js # Linking config.js -[[ ! -h config.js ]] && echo "Linking config.js" && ln -s customize/config.js config.js +[ ! -h config.js ] && echo "Linking config.js" && ln -s customize/config.js config.js # Configure -[[ -n "$USE_SSL" ]] && echo "Using secure websockets: $USE_SSL" \ +[ -n "$USE_SSL" ] && echo "Using secure websockets: $USE_SSL" \ && sed -i "s/useSecureWebsockets: .*/useSecureWebsockets: ${USE_SSL},/g" customize/config.js -[[ -n "$STORAGE" ]] && echo "Using storage adapter: $STORAGE" \ +[ -n "$STORAGE" ] && echo "Using storage adapter: $STORAGE" \ && sed -i "s/storage: .*/storage: ${STORAGE},/g" customize/config.js -[[ -n "$LOG_TO_STDOUT" ]] && echo "Logging to stdout: $LOG_TO_STDOUT" \ +[ -n "$LOG_TO_STDOUT" ] && echo "Logging to stdout: $LOG_TO_STDOUT" \ && sed -i "s/logToStdout: .*/logToStdout: ${LOG_TO_STDOUT},/g" customize/config.js