diff --git a/.dockerignore b/.dockerignore index b102e90a3..f09aed879 100644 --- a/.dockerignore +++ b/.dockerignore @@ -11,3 +11,10 @@ docker-compose.yml traefik2.yml Dockerfile* *.png +/onlyoffice-builds.git/ +/www/common/onlyoffice/dist/ +blob +block +customize +data +datastore diff --git a/.gitignore b/.gitignore index 6609bf47b..6966c3c01 100644 --- a/.gitignore +++ b/.gitignore @@ -34,3 +34,5 @@ www/common/onlyoffice/v* /onlyoffice-builds.git/ /www/common/onlyoffice/dist/ +/install-onlyoffice-docker.key +/onlyoffice-dist/ diff --git a/Dockerfile b/Dockerfile index 36e92e747..ad9ffcfdf 100644 --- a/Dockerfile +++ b/Dockerfile @@ -21,6 +21,8 @@ RUN npm install --production \ # Create actual CryptPad image FROM node:lts-slim +ENV DEBIAN_FRONTEND=noninteractive +RUN apt update && apt install -y git rdfind && rm -rf /var/lib/apt/lists/* # Create user and group for CryptPad so it does not run as root RUN groupadd cryptpad -g 4001 diff --git a/docker-compose.yml b/docker-compose.yml index 72517b50d..13301b836 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -21,6 +21,7 @@ services: - ./customize:/cryptpad/customize - ./data/data:/cryptpad/data - ./data/files:/cryptpad/datastore + - ./onlyoffice-dist:/cryptpad/www/common/onlyoffice/dist ports: - "3000:3000" diff --git a/docker-entrypoint.sh b/docker-entrypoint.sh index 48e3ed4a6..799e76513 100755 --- a/docker-entrypoint.sh +++ b/docker-entrypoint.sh @@ -22,13 +22,19 @@ if [ ! -f "$CPAD_CONF" ]; then eg: docker run -v /path/to/config.js:/cryptpad/config/config.js \n\ #################################################################### \n" -cp "$CPAD_HOME"/config/config.example.js "$CPAD_CONF" + cp "$CPAD_HOME"/config/config.example.js "$CPAD_CONF" -sed -i -e "s@\(httpUnsafeOrigin:\).*[^,]@\1 '$CPAD_MAIN_DOMAIN'@" \ - -e "s@\(^ *\).*\(httpSafeOrigin:\).*[^,]@\1\2 '$CPAD_SANDBOX_DOMAIN'@" $CPAD_CONF + sed -i -e "s@\(httpUnsafeOrigin:\).*[^,]@\1 '$CPAD_MAIN_DOMAIN'@" \ + -e "s@\(^ *\).*\(httpSafeOrigin:\).*[^,]@\1\2 '$CPAD_SANDBOX_DOMAIN'@" "$CPAD_CONF" fi cd $CPAD_HOME +eval "$(ssh-agent -s)" # TODO remove this when repo is public +ssh-add install-onlyoffice-docker.key +mkdir -p ~/.ssh +chmod 0700 ~/.ssh +ssh-keyscan github.com > ~/.ssh/known_hosts +./install-onlyoffice.sh -c -l # TODO run only when OnlyOffice is enabled npm run build exec "$@"