diff --git a/web/documentserver-example/nodejs/Dockerfile b/web/documentserver-example/nodejs/Dockerfile new file mode 100644 index 00000000..0773d37c --- /dev/null +++ b/web/documentserver-example/nodejs/Dockerfile @@ -0,0 +1,28 @@ +FROM node:buster +LABEL maintainer Ascensio System SIA + +ENV LANG=en_US.UTF-8 \ + LANGUAGE=en_US:en \ + LC_ALL=en_US.UTF-8 \ + NODE_ENV=production-linux \ + NODE_CONFIG_DIR=/etc/onlyoffice/documentserver-example/ + +WORKDIR /var/www/onlyoffice/documentserver-example/ +COPY . /var/www/onlyoffice/documentserver-example/ + +RUN groupadd --system --gid 1001 ds && \ + useradd --system -g ds --no-create-home --shell /sbin/nologin --uid 1001 ds && \ + chown -R ds:ds /var/www/onlyoffice/documentserver-example/ && \ + mkdir -p /var/lib/onlyoffice/documentserver-example/ && \ + chown -R ds:ds /var/lib/onlyoffice/ && \ + mv files /var/lib/onlyoffice/documentserver-example/ && \ + mkdir -p /etc/onlyoffice/documentserver-example/ && \ + chown -R ds:ds /etc/onlyoffice/ && \ + mv config/* /etc/onlyoffice/documentserver-example/ && \ + npm install + +EXPOSE 3000 + +USER ds + +ENTRYPOINT /var/www/onlyoffice/documentserver-example/docker-entrypoint.sh npm start diff --git a/web/documentserver-example/nodejs/docker-entrypoint.sh b/web/documentserver-example/nodejs/docker-entrypoint.sh new file mode 100755 index 00000000..b309b5e4 --- /dev/null +++ b/web/documentserver-example/nodejs/docker-entrypoint.sh @@ -0,0 +1,13 @@ +#!/bin/sh +set -e +export NODE_CONFIG='{ + "server": { + "siteUrl": "'${DS_URL:-"/"}'", + "token": { + "enable": '${JWT_ENABLED:-false}', + "secret": "'${JWT_SECRET:-secret}'", + "authorizationHeader": "'${JWT_HEADER:-Authorization}'" + } + } +}' +exec "$@"