Modify docker images build (#380)

* Modify images build config

* Cosmetic modify

* Modify git clone ind Dockerfile
This commit is contained in:
Sergey Kirichenko 2021-10-06 16:43:18 +03:00 committed by GitHub
parent fcffb01e78
commit 5d1bfbefa4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
12 changed files with 115 additions and 474 deletions

View File

@ -57,7 +57,7 @@ echo "== FRONT-END-BUILD =="
cd ${SRC_PATH}
yarn install
# debug config
if [ "$DEBUG_INFO" = true ]; then
yarn debug-info
fi

View File

@ -2,12 +2,12 @@
PRODUCT=onlyoffice
REPO=${PRODUCT}
STATUS=""
SRV_VERSION=latest
MYSQL_VERSION=8.0.18
ELK_VERSION=7.13.1
SERVICE_PORT=5050
CONTAINER_PREFIX=${PRODUCT}-
DOCKERFILE=Dockerfile-app
DOCKER_TAG=latest
DOCKERFILE=Dockerfile.app
# zookeeper #
ZOO_PORT=2181

View File

@ -1,355 +0,0 @@
### STAGE 1: Base image ######
ARG SRC_PATH=/app/onlyoffice/src
ARG BUILD_PATH=/var/www
ARG REPO_TAG=5.0.202-focal-amd64
ARG REPO=mcr.microsoft.com/dotnet/sdk
FROM $REPO:$REPO_TAG AS base
ARG RELEASE_DATE=2021-04-11
ARG VERSION=8.9.0.190
ARG GIT_BRANCH=master
ARG SRC_PATH
ARG BUILD_PATH
LABEL onlyoffice.appserver.release-date="${RELEASE_DATE}" \
onlyoffice.appserver.version="${VERSION}" \
maintainer="Ascensio System SIA <support@onlyoffice.com>"
ENV LANG=en_US.UTF-8 \
LANGUAGE=en_US:en \
LC_ALL=en_US.UTF-8
RUN echo "nameserver 8.8.8.8" | tee /etc/resolv.conf > /dev/null && \
apt-get -y update && \
apt-get -y upgrade && \
apt-get -y dist-upgrade && \
apt-get install -yq sudo locales && \
addgroup --system --gid 107 onlyoffice && \
adduser -uid 104 --quiet --home /var/www/onlyoffice --system --gid 107 onlyoffice && \
locale-gen en_US.UTF-8 && \
apt-get -y update && \
apt-get install -yq git apt-utils npm nodejs && \
npm install --global yarn
RUN echo "nameserver 8.8.8.8" | tee /etc/resolv.conf > /dev/null && \
echo ${GIT_BRANCH} && \
git clone --depth 1 -b ${GIT_BRANCH} https://github.com/ONLYOFFICE/AppServer.git ${SRC_PATH}
RUN echo "nameserver 8.8.8.8" | tee /etc/resolv.conf > /dev/null && \
cd ${SRC_PATH} && \
mkdir -p /var/www/public/ && cp -rf public/* /var/www/public/ && \
mkdir -p /app/onlyoffice/config/ && cp -rf config/* /app/onlyoffice/config/ && \
mkdir -p /etc/nginx/conf.d && cp -f config/nginx/onlyoffice*.conf /etc/nginx/conf.d/ && \
mkdir -p /etc/nginx/includes/ && cp -f config/nginx/includes/onlyoffice*.conf /etc/nginx/includes/ && \
sed -e 's/#//' -i /etc/nginx/conf.d/onlyoffice.conf && \
cd ${SRC_PATH}/build/install/common/ && \
bash build-frontend.sh -sp ${SRC_PATH} && \
bash build-backend.sh -sp ${SRC_PATH} -ar "--disable-parallel" && \
bash publish-backend.sh -sp ${SRC_PATH} -bp ${BUILD_PATH} -ar "--disable-parallel"
COPY config/mysql/conf.d/mysql.cnf /etc/mysql/conf.d/mysql.cnf
COPY config/supervisor/supervisord.conf /etc/supervisor/conf.d/supervisord.conf
RUN sed -i 's/Server=.*;Port=/Server=127.0.0.1;Port=/' /app/onlyoffice/config/appsettings.test.json
RUN rm -rf /var/lib/apt/lists/*
### STAGE 2: Build ###
FROM mcr.microsoft.com/dotnet/aspnet:5.0.4-focal-amd64 as builder
COPY --from=base /app/onlyoffice/config/ /app/onlyoffice/config/
# add defualt user and group for no-root run
RUN mkdir -p /var/log/onlyoffice && \
mkdir -p /app/onlyoffice/data && \
addgroup --system --gid 107 onlyoffice && \
adduser -uid 104 --quiet --home /var/www/onlyoffice --system --gid 107 onlyoffice && \
chown onlyoffice:onlyoffice /app/onlyoffice -R && \
chown onlyoffice:onlyoffice /var/log -R && \
chown onlyoffice:onlyoffice /var/www -R
RUN echo "nameserver 8.8.8.8" | tee /etc/resolv.conf > /dev/null && \
apt-get -y update && \
apt-get -y upgrade && \
apt-get install -yq nano &&\
apt-get install -yq jq &&\
apt-get install -yq nodejs &&\
apt-get install -yq libgdiplus
#USER onlyoffice
EXPOSE 5050
ENTRYPOINT ["./docker-entrypoint.sh"]
### STAGE 3: Run ###
## NGINX ##
#FROM nginx:stable-alpine AS web
FROM nginx AS web
ARG SRC_PATH="/app/onlyoffice/src"
RUN echo "nameserver 8.8.8.8" | tee /etc/resolv.conf > /dev/null && \
apt-get -y update && \
apt-get -y upgrade && \
apt-get install -yq vim && \
# Remove default nginx website
rm -rf /usr/share/nginx/html/*
# copy static services files and config values
COPY --from=base /etc/nginx/conf.d /etc/nginx/conf.d
COPY --from=base /etc/nginx/includes /etc/nginx/includes
COPY --from=base /var/www/public /var/www/public
COPY --from=base ${SRC_PATH}/products/ASC.CRM/Client/dist /var/www/products/ASC.CRM/client
COPY --from=base ${SRC_PATH}/web/ASC.Web.Editor/dist /var/www/products/ASC.Files/editor
COPY --from=base ${SRC_PATH}/products/ASC.Files/Client/dist /var/www/products/ASC.Files/client
COPY --from=base ${SRC_PATH}/web/ASC.Web.Login/dist /var/www/studio/login
COPY --from=base ${SRC_PATH}/products/ASC.People/Client/dist /var/www/products/ASC.People/client
COPY --from=base ${SRC_PATH}/products/ASC.Projects/Client/dist /var/www/products/ASC.Projects/client
COPY --from=base ${SRC_PATH}/web/ASC.Web.Client/dist /var/www/studio/client
COPY /config/nginx/templates/upstream.conf.template /etc/nginx/templates/upstream.conf.template
# add defualt user and group for no-root run
RUN chown nginx:nginx /etc/nginx/* -R &&\
chown nginx:nginx /docker-entrypoint.d/* &&\
# changes for upstream configure
sed -i 's/localhost:5010/$service_api_system/' /etc/nginx/conf.d/onlyoffice.conf && \
sed -i 's/localhost:5012/$service_backup/' /etc/nginx/conf.d/onlyoffice.conf && \
sed -i 's/localhost:5021/$service_crm/' /etc/nginx/conf.d/onlyoffice.conf && \
sed -i 's/localhost:5007/$service_files/' /etc/nginx/conf.d/onlyoffice.conf && \
sed -i 's/localhost:5004/$service_people_server/' /etc/nginx/conf.d/onlyoffice.conf && \
sed -i 's/localhost:5020/$service_projects_server/' /etc/nginx/conf.d/onlyoffice.conf && \
sed -i 's/localhost:5000/$service_api/' /etc/nginx/conf.d/onlyoffice.conf && \
sed -i 's/localhost:5003/$service_studio/' /etc/nginx/conf.d/onlyoffice.conf && \
sed -i 's/localhost:9999/$service_urlshortener/' /etc/nginx/conf.d/onlyoffice.conf && \
sed -i 's/172.*/$document_server;/' /etc/nginx/conf.d/onlyoffice.conf && \
# configute the image nginx whith less privileged https://hub.docker.com/_/nginx
sed -i 's/pid.*nginx.pid;/pid \/tmp\/nginx.pid;/' /etc/nginx/nginx.conf && \
sed -i 's/http.*{/http {\n client_body_temp_path \/tmp\/client_temp;\n proxy_temp_path \/tmp\/proxy_temp_path;\n fastcgi_temp_path \/tmp\/fastcgi_temp;\n uwsgi_temp_path \/tmp\/uwsgi_temp;\n scgi_temp_path \/tmp\/scgi_temp;/' /etc/nginx/nginx.conf
## ASC.ApiSystem ##
FROM builder AS api_system
WORKDIR /var/www/services/apisystem/
COPY --chown=onlyoffice:onlyoffice docker-entrypoint.sh .
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/services/apisystem/ .
CMD ["ASC.ApiSystem.dll", "ASC.ApiSystem"]
## ASC.Data.Backup ##
FROM builder AS backup
WORKDIR /var/www/services/backup/
COPY --chown=onlyoffice:onlyoffice docker-entrypoint.sh .
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/services/backup/ .
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.People/server/ASC.People.dll /var/www/products/ASC.People/server/
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.Files/server/ASC.Files*.dll /var/www/products/ASC.Files/server/
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.CRM/server/ASC.CRM*.dll /var/www/products/ASC.CRM/server/
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.Projects/server/ASC.Projects*.dll /var/www/products/ASC.Projects/server/
CMD ["ASC.Data.Backup.dll", "ASC.Data.Backup", "core:products:folder=/var/www/products/", "core:products:subfolder=server"]
## ASC.CRM ##
FROM builder AS crm
WORKDIR /var/www/products/ASC.CRM/server/
COPY --chown=onlyoffice:onlyoffice docker-entrypoint.sh .
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.CRM/server/ .
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.Files/server/ASC.Files*.dll /var/www/products/ASC.Files/server/
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.People/server/ASC.People.dll /var/www/products/ASC.People/server/
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.CRM/server/ASC.CRM*.dll /var/www/products/ASC.CRM/server/
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.Projects/server/ASC.Projects*.dll /var/www/products/ASC.Projects/server/
CMD ["ASC.CRM.dll", "ASC.CRM"]
## ASC.Data.Storage.Encryption ##
FROM builder AS data_storage_encryption
WORKDIR /var/www/services/storage.encryption/
COPY --chown=onlyoffice:onlyoffice docker-entrypoint.sh .
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/services/storage.encryption/ .
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.Files/server/ASC.Files*.dll /var/www/products/ASC.Files/server/
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.People/server/ASC.People.dll /var/www/products/ASC.People/server/
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.CRM/server/ASC.CRM*.dll /var/www/products/ASC.CRM/server/
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.Projects/server/ASC.Projects*.dll /var/www/products/ASC.Projects/server/
CMD ["ASC.Data.Storage.Encryption.dll", "ASC.Data.Storage.Encryption"]
## ASC.Files ##
FROM builder AS files
WORKDIR /var/www/products/ASC.Files/server/
COPY --chown=onlyoffice:onlyoffice docker-entrypoint.sh .
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.Files/server/ .
COPY --from=base --chown=onlyoffice:onlyoffice ${SRC_PATH}/ASC.Files/Server/DocStore .
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.People/server/ASC.People.dll /var/www/products/ASC.People/server/
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.CRM/server/ASC.CRM*.dll /var/www/products/ASC.CRM/server/
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.Projects/server/ASC.Projects*.dll /var/www/products/ASC.Projects/server/
CMD ["ASC.Files.dll", "ASC.Files"]
## ASC.Files.Service ##
FROM builder AS files_services
WORKDIR /var/www/products/ASC.Files/service/
COPY --chown=onlyoffice:onlyoffice docker-entrypoint.sh .
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.Files/service/ .
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.Files/server/ASC.Files*.dll /var/www/products/ASC.Files/Server/
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.People/server/ASC.People*.dll /var/www/products/ASC.People/Server/
CMD ["ASC.Files.Service.dll", "ASC.Files.Service", "core:products:folder=/var/www/products/", "core:products:subfolder=server"]
## ASC.Data.Storage.Migration ##
FROM builder AS data_storage_migration
WORKDIR /var/www/services/storage.migration/service/
COPY --chown=onlyoffice:onlyoffice docker-entrypoint.sh .
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/services/storage.migration/ .
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.Files/server/ /var/www/products/ASC.Files/Server/
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.People/server/ /var/www/products/ASC.People/Server/
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.CRM/server/ /var/www/products/ASC.CRM/Server/
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.Projects/server/ /var/www/products/ASC.Projects/Server/
CMD ["ASC.Data.Storage.Migration.dll", "ASC.Data.Storage.Migration"]
## ASC.Notify ##
FROM builder AS notify
WORKDIR /var/www/services/notify/service
COPY --chown=onlyoffice:onlyoffice docker-entrypoint.sh .
COPY --from=base /var/www/services/notify/ .
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.People/server/ASC.People.dll /var/www/products/ASC.People/Server/
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.Files/server/ASC.Files*.dll /var/www/products/ASC.Files/Server/
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.CRM/server/ASC.CRM*.dll /var/www/products/ASC.CRM/Server/
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.Projects/server/ASC.Projects*.dll /var/www/products/ASC.Projects/Server/
CMD ["ASC.Notify.dll", "ASC.Notify", "core:products:folder=/var/www/products/", "core:products:subfolder=server"]
## ASC.People ##
FROM builder AS people_server
WORKDIR /var/www/products/ASC.People/server/
COPY --chown=onlyoffice:onlyoffice docker-entrypoint.sh .
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.People/server/ .
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.Files/server/ASC.Files*.dll /var/www/products/ASC.Files/server/
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.CRM/server/ASC.CRM*.dll /var/www/products/ASC.CRM/server/
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.Projects/server/ASC.Projects*.dll /var/www/products/ASC.Projects/server/
CMD ["ASC.People.dll", "ASC.People"]
## ASC.Projects ##
FROM builder AS projects_server
WORKDIR /var/www/products/ASC.Projects/server/
COPY --chown=onlyoffice:onlyoffice docker-entrypoint.sh .
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.Projects/server/ .
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.Files/server/ASC.Files*.dll /var/www/products/ASC.Files/server/
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.People/server/ASC.People.dll /var/www/products/ASC.People/server/
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.CRM/server/ASC.CRM*.dll /var/www/products/ASC.CRM/server/
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.Projects/server/ASC.Projects*.dll /var/www/products/ASC.Projects/server/
CMD ["ASC.Projects.dll", "ASC.Projects"]
## ASC.Socket.IO.Svc ##
FROM builder AS socket
WORKDIR /var/www/services/socket/
COPY --chown=onlyoffice:onlyoffice docker-entrypoint.sh .
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/services/socket/service/ .
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/services/socket/client /var/www/ASC.Socket.IO
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.Files/server/ /var/www/products/ASC.Files/server/
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.People/server/ /var/www/products/ASC.People/server/
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.CRM/server/ /var/www/products/ASC.CRM/server/
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.Projects/server/ /var/www/products/ASC.Projects/server/
CMD ["ASC.Socket.IO.Svc.dll", "ASC.Socket.IO.Svc"]
## ASC.Studio.Notify ##
FROM builder AS studio_notify
WORKDIR /var/www/services/studio.notify/service/
COPY --chown=onlyoffice:onlyoffice docker-entrypoint.sh .
COPY --from=base /var/www/services/studio.notify/ .
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.People/server/ASC.People.dll /var/www/products/ASC.People/Server/
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.Files/server/ASC.Files*.dll /var/www/products/ASC.Files/Server/
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.CRM/server/ASC.CRM*.dll /var/www/products/ASC.CRM/Server/
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.Projects/server/ASC.Projects*.dll /var/www/products/ASC.Projects/Server/
CMD ["ASC.Studio.Notify.dll", "ASC.Studio.Notify", "core:products:folder=/var/www/products/", "core:products:subfolder=server"]
## ASC.TelegramService ##
FROM builder AS telegram_service
WORKDIR /var/www/services/telegram/
COPY --chown=onlyoffice:onlyoffice docker-entrypoint.sh .
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/services/telegram/service/ .
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.Files/server/ASC.Files*.dll /var/www/products/ASC.Files/server/
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.People/server/ASC.People.dll /var/www/products/ASC.People/server/
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.CRM/server/ASC.CRM*.dll /var/www/products/ASC.CRM/server/
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.Projects/server/ASC.Projects*.dll /var/www/products/ASC.Projects/server/
CMD ["ASC.TelegramService.dll", "ASC.TelegramService"]
## ASC.Thumbnails.Svc ##
FROM builder AS thumbnails
WORKDIR /var/www/services/thumb/service/
COPY --chown=onlyoffice:onlyoffice docker-entrypoint.sh .
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/services/thumb/service/ .
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/services/thumb/client /var/www/services/thumb/client
CMD ["ASC.Thumbnails.Svc.dll", "ASC.Thumbnails.Svc"]
## ASC.UrlShortener.Svc ##
FROM builder AS urlshortener
WORKDIR /var/www/services/urlshortener/service/
COPY --chown=onlyoffice:onlyoffice docker-entrypoint.sh .
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/services/urlshortener/service/ .
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/services/urlshortener/client /var/www/services/urlshortener/client
CMD ["ASC.UrlShortener.Svc.dll", "ASC.UrlShortener.Svc"]
## ASC.Web.Api ##
FROM builder AS api
WORKDIR /var/www/studio/api/
COPY --chown=onlyoffice:onlyoffice docker-entrypoint.sh .
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/studio/api .
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.People/server/ASC.People.dll /var/www/products/ASC.People/server/
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.Files/server/ASC.Files*.dll /var/www/products/ASC.Files/server/
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.CRM/server/ASC.CRM*.dll /var/www/products/ASC.CRM/server/
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.Projects/server/ASC.Projects*.dll /var/www/products/ASC.Projects/server/
CMD ["ASC.Web.Api.dll", "ASC.Web.Api"]
## ASC.Web.Studio ##
FROM builder AS studio
WORKDIR /var/www/studio/server/
COPY --chown=onlyoffice:onlyoffice docker-entrypoint.sh .
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/studio/server/ .
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.Files/server/ASC.Files*.dll /var/www/products/ASC.Files/server/
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.People/server/ASC.People.dll /var/www/products/ASC.People/server/
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.CRM/server/ASC.CRM*.dll /var/www/products/ASC.CRM/server/
COPY --from=base --chown=onlyoffice:onlyoffice /var/www/products/ASC.Projects/server/ASC.Projects*.dll /var/www/products/ASC.Projects/server/
CMD ["ASC.Web.Studio.dll", "ASC.Web.Studio"]

View File

@ -37,12 +37,10 @@ RUN echo "nameserver 8.8.8.8" | tee /etc/resolv.conf > /dev/null && \
curl -fsSL https://deb.nodesource.com/setup_14.x | sudo -E bash - && \
apt-get install -y nodejs
RUN echo "nameserver 8.8.8.8" | tee /etc/resolv.conf > /dev/null && \
echo ${GIT_BRANCH} && \
git clone --depth 1 --recurse-submodules -b ${GIT_BRANCH} https://github.com/ONLYOFFICE/AppServer.git ${SRC_PATH}
RUN echo ${GIT_BRANCH} && \
git clone --recurse-submodules -b ${GIT_BRANCH} https://github.com/ONLYOFFICE/AppServer.git ${SRC_PATH}
RUN echo "nameserver 8.8.8.8" | tee /etc/resolv.conf > /dev/null && \
cd ${SRC_PATH} && \
RUN cd ${SRC_PATH} && \
mkdir -p /app/onlyoffice/config/ && cp -rf config/* /app/onlyoffice/config/ && \
mkdir -p /etc/nginx/conf.d && cp -f config/nginx/onlyoffice*.conf /etc/nginx/conf.d/ && \
mkdir -p /etc/nginx/includes/ && cp -f config/nginx/includes/onlyoffice*.conf /etc/nginx/includes/ && \
@ -64,7 +62,6 @@ RUN echo "nameserver 8.8.8.8" | tee /etc/resolv.conf > /dev/null && \
rm -rf ${SRC_PATH}/products/ASC.People/Server/* && \
rm -rf ${SRC_PATH}/products/ASC.Projects/Server/*
COPY config/mysql/conf.d/mysql.cnf /etc/mysql/conf.d/mysql.cnf
RUN rm -rf /var/lib/apt/lists/*

View File

@ -18,7 +18,6 @@ x-service:
DOCUMENT_SERVER_JWT_HEADER: ${DOCUMENT_SERVER_JWT_HEADER}
DOCUMENT_SERVER_URL_PUBLIC: ${DOCUMENT_SERVER_URL_PUBLIC}
DOCUMENT_SERVER_URL_INTERNAL: ${DOCUMENT_SERVER_URL_INTERNAL}
DOCUMENT_SERVER_URL_CONVERTER: ${DOCUMENT_SERVER_URL_CONVERTER}
KAFKA_HOST: ${KAFKA_HOST}
ELK_HOST: ${ELK_HOST}
PROXY_HOST: ${PROXY_HOST}
@ -32,7 +31,6 @@ x-service:
- calendar_data:/var/www/products/ASC.Calendar/server/
- mail_data:/var/www/products/ASC.Mail/server/
services:
onlyoffice-elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:${ELK_VERSION}
@ -55,97 +53,64 @@ services:
- "9200"
- "9300"
onlyoffice-zookeeper:
image: zookeeper:latest
container_name: ${ZOO_HOST}
restart: always
expose:
- "2181"
environment:
ZOO_MY_ID: 1
ZOO_PORT: ${ZOO_PORT:-2181}
ZOO_SERVER: ${ZOO_SERVER}
volumes:
- zoo_data:/data
- zoo_log:/datalog
onlyoffice-kafka:
image: confluentinc/cp-kafka:latest
container_name: ${KAFKA_HOST}
restart: always
expose:
- "9092"
depends_on:
- onlyoffice-zookeeper
environment:
KAFKA_ADVERTISED_LISTENERS: ${KAFKA_ADVERTISED_LISTENERS}
KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: ${KAFKA_LISTENER_SECURITY_PROTOCOL_MAP}
KAFKA_INTER_BROKER_LISTENER_NAME: ${KAFKA_INTER_BROKER_LISTENER_NAME}
KAFKA_ZOOKEEPER_CONNECT: ${KAFKA_ZOOKEEPER_CONNECT}
KAFKA_BROKER_ID: ${KAFKA_BROKER_ID}
KAFKA_LOG4J_LOGGERS: ${KAFKA_LOG4J_LOGGERS}
KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: ${KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR}
volumes:
- kafka_data:/var/lib/kafka/data
onlyoffice-api-system:
<<: *x-service-base
image: "${REPO}/${STATUS}appserver-api-system:${SRV_VERSION}"
image: "${REPO}/${STATUS}appserver-api-system:${DOCKER_TAG}"
container_name: ${API_SYSTEM_HOST}
onlyoffice-backup:
<<: *x-service-base
image: "${REPO}/${STATUS}appserver-backup:${SRV_VERSION}"
image: "${REPO}/${STATUS}appserver-backup:${DOCKER_TAG}"
container_name: ${BACKUP_HOST}
onlyoffice-calendar:
<<: *x-service-base
image: "${REPO}/${STATUS}appserver-calendar:${SRV_VERSION}"
image: "${REPO}/${STATUS}appserver-calendar:${DOCKER_TAG}"
container_name: ${CALENDAR_HOST}
onlyoffice-crm:
<<: *x-service-base
image: "${REPO}/${STATUS}appserver-crm:${SRV_VERSION}"
image: "${REPO}/${STATUS}appserver-crm:${DOCKER_TAG}"
container_name: ${CRM_HOST}
onlyoffice-storage-encryption:
<<: *x-service-base
image: "${REPO}/${STATUS}appserver-storage-encryption:${SRV_VERSION}"
image: "${REPO}/${STATUS}appserver-storage-encryption:${DOCKER_TAG}"
container_name: ${STORAGE_ENCRYPTION_HOST}
onlyoffice-files:
<<: *x-service-base
image: "${REPO}/${STATUS}appserver-files:${SRV_VERSION}"
image: "${REPO}/${STATUS}appserver-files:${DOCKER_TAG}"
container_name: ${FILES_HOST}
onlyoffice-files-services:
<<: *x-service-base
image: "${REPO}/${STATUS}appserver-files-services:${SRV_VERSION}"
image: "${REPO}/${STATUS}appserver-files-services:${DOCKER_TAG}"
container_name: ${FILES_SERVICES_HOST}
onlyoffice-mail:
<<: *x-service-base
image: "${REPO}/${STATUS}appserver-mail:${SRV_VERSION}"
image: "${REPO}/${STATUS}appserver-mail:${DOCKER_TAG}"
container_name: ${MAIL_HOST}
onlyoffice-storage-migration:
<<: *x-service-base
image: "${REPO}/${STATUS}appserver-storage-migration:${SRV_VERSION}"
image: "${REPO}/${STATUS}appserver-storage-migration:${DOCKER_TAG}"
container_name: ${STORAGE_MIGRATION_HOST}
onlyoffice-people-server:
<<: *x-service-base
image: "${REPO}/${STATUS}appserver-people-server:${SRV_VERSION}"
image: "${REPO}/${STATUS}appserver-people-server:${DOCKER_TAG}"
container_name: ${PEOPLE_SERVER_HOST}
onlyoffice-projects-server:
<<: *x-service-base
image: "${REPO}/${STATUS}appserver-projects-server:${SRV_VERSION}"
image: "${REPO}/${STATUS}appserver-projects-server:${DOCKER_TAG}"
container_name: ${PROJECTS_SERVER_HOST}
onlyoffice-socket:
<<: *x-service-base
image: "${REPO}/${STATUS}appserver-socket:${SRV_VERSION}"
image: "${REPO}/${STATUS}appserver-socket:${DOCKER_TAG}"
container_name: ${SOCKET_HOST}
expose:
- ${SERVICE_PORT}
@ -153,17 +118,17 @@ services:
onlyoffice-studio-notify:
<<: *x-service-base
image: "${REPO}/${STATUS}appserver-studio-notify:${SRV_VERSION}"
image: "${REPO}/${STATUS}appserver-studio-notify:${DOCKER_TAG}"
container_name: ${STUDIO_NOTIFY_HOST}
onlyoffice-telegram-service:
<<: *x-service-base
image: "${REPO}/${STATUS}appserver-telegram-service:${SRV_VERSION}"
image: "${REPO}/${STATUS}appserver-telegram-service:${DOCKER_TAG}"
container_name: ${TELEGRAM_SERVICE_HOST}
onlyoffice-thumbnails:
<<: *x-service-base
image: "${REPO}/${STATUS}appserver-thumbnails:${SRV_VERSION}"
image: "${REPO}/${STATUS}appserver-thumbnails:${DOCKER_TAG}"
container_name: ${THUMBNAILS_HOST}
expose:
- ${SERVICE_PORT}
@ -171,7 +136,7 @@ services:
onlyoffice-urlshortener:
<<: *x-service-base
image: "${REPO}/${STATUS}appserver-urlshortener:${SRV_VERSION}"
image: "${REPO}/${STATUS}appserver-urlshortener:${DOCKER_TAG}"
container_name: ${URLSHORTENER_HOST}
expose:
- ${SERVICE_PORT}
@ -179,24 +144,24 @@ services:
onlyoffice-api:
<<: *x-service-base
image: "${REPO}/${STATUS}appserver-api:${SRV_VERSION}"
image: "${REPO}/${STATUS}appserver-api:${DOCKER_TAG}"
container_name: ${API_HOST}
onlyoffice-studio:
<<: *x-service-base
image: "${REPO}/${STATUS}appserver-studio:${SRV_VERSION}"
image: "${REPO}/${STATUS}appserver-studio:${DOCKER_TAG}"
container_name: ${STUDIO_HOST}
onlyoffice-ssoauth:
<<: *x-service-base
image: "${REPO}/${STATUS}appserver-ssoauth:${SRV_VERSION}"
image: "${REPO}/${STATUS}appserver-ssoauth:${DOCKER_TAG}"
container_name: ${SSOAUTH_HOST}
expose:
- ${SERVICE_PORT}
- "9834"
onlyoffice-proxy:
image: "${REPO}/${STATUS}appserver-proxy:${SRV_VERSION}"
image: "${REPO}/${STATUS}appserver-proxy:${DOCKER_TAG}"
container_name: ${PROXY_HOST}
restart: always
expose:
@ -257,10 +222,7 @@ networks:
name: ${NETWORK_NAME}
volumes:
kafka_data:
es_data:
zoo_data:
zoo_log:
proxy_log:
app_data:
files_data:

View File

@ -6,158 +6,158 @@ services:
context: ./
dockerfile: "${DOCKERFILE}"
target: api_system
image: "${REPO}/${STATUS}appserver-api-system:${SRV_VERSION}"
image: "${REPO}/${STATUS}appserver-api-system:${DOCKER_TAG}"
onlyoffice-backup:
build:
context: ./
dockerfile: "${DOCKERFILE}"
target: backup
image: "${REPO}/${STATUS}appserver-backup:${SRV_VERSION}"
image: "${REPO}/${STATUS}appserver-backup:${DOCKER_TAG}"
onlyoffice-calendar:
build:
context: ./
dockerfile: "${DOCKERFILE}"
target: calendar
image: "${REPO}/${STATUS}appserver-calendar:${SRV_VERSION}"
image: "${REPO}/${STATUS}appserver-calendar:${DOCKER_TAG}"
onlyoffice-crm:
build:
context: ./
dockerfile: "${DOCKERFILE}"
target: crm
image: "${REPO}/${STATUS}appserver-crm:${SRV_VERSION}"
image: "${REPO}/${STATUS}appserver-crm:${DOCKER_TAG}"
onlyoffice-storage-encryption:
build:
context: ./
dockerfile: "${DOCKERFILE}"
target: data_storage_encryption
image: "${REPO}/${STATUS}appserver-storage-encryption:${SRV_VERSION}"
image: "${REPO}/${STATUS}appserver-storage-encryption:${DOCKER_TAG}"
onlyoffice-files:
build:
context: ./
dockerfile: "${DOCKERFILE}"
target: files
image: "${REPO}/${STATUS}appserver-files:${SRV_VERSION}"
image: "${REPO}/${STATUS}appserver-files:${DOCKER_TAG}"
onlyoffice-files-services:
build:
context: ./
dockerfile: "${DOCKERFILE}"
target: files_services
image: "${REPO}/${STATUS}appserver-files-services:${SRV_VERSION}"
image: "${REPO}/${STATUS}appserver-files-services:${DOCKER_TAG}"
onlyoffice-mail:
build:
context: ./
dockerfile: "${DOCKERFILE}"
target: mail
image: "${REPO}/${STATUS}appserver-mail:${SRV_VERSION}"
image: "${REPO}/${STATUS}appserver-mail:${DOCKER_TAG}"
onlyoffice-storage-migration:
build:
context: ./
dockerfile: "${DOCKERFILE}"
target: data_storage_migration
image: "${REPO}/${STATUS}appserver-storage-migration:${SRV_VERSION}"
image: "${REPO}/${STATUS}appserver-storage-migration:${DOCKER_TAG}"
onlyoffice-notify:
build:
context: ./
dockerfile: "${DOCKERFILE}"
target: notify
image: "${REPO}/${STATUS}appserver-notify:${SRV_VERSION}"
image: "${REPO}/${STATUS}appserver-notify:${DOCKER_TAG}"
onlyoffice-people-server:
build:
context: ./
dockerfile: "${DOCKERFILE}"
target: people_server
image: "${REPO}/${STATUS}appserver-people-server:${SRV_VERSION}"
image: "${REPO}/${STATUS}appserver-people-server:${DOCKER_TAG}"
onlyoffice-projects-server:
build:
context: ./
dockerfile: "${DOCKERFILE}"
target: projects_server
image: "${REPO}/${STATUS}appserver-projects-server:${SRV_VERSION}"
image: "${REPO}/${STATUS}appserver-projects-server:${DOCKER_TAG}"
onlyoffice-socket:
build:
context: ./
dockerfile: "${DOCKERFILE}"
target: socket
image: "${REPO}/${STATUS}appserver-socket:${SRV_VERSION}"
image: "${REPO}/${STATUS}appserver-socket:${DOCKER_TAG}"
onlyoffice-studio-notify:
build:
context: ./
dockerfile: "${DOCKERFILE}"
target: studio_notify
image: "${REPO}/${STATUS}appserver-studio-notify:${SRV_VERSION}"
image: "${REPO}/${STATUS}appserver-studio-notify:${DOCKER_TAG}"
onlyoffice-telegram-service:
build:
context: ./
dockerfile: "${DOCKERFILE}"
target: telegram_service
image: "${REPO}/${STATUS}appserver-telegram-service:${SRV_VERSION}"
image: "${REPO}/${STATUS}appserver-telegram-service:${DOCKER_TAG}"
onlyoffice-thumbnails:
build:
context: ./
dockerfile: "${DOCKERFILE}"
target: thumbnails
image: "${REPO}/${STATUS}appserver-thumbnails:${SRV_VERSION}"
image: "${REPO}/${STATUS}appserver-thumbnails:${DOCKER_TAG}"
onlyoffice-urlshortener:
build:
context: ./
dockerfile: "${DOCKERFILE}"
target: urlshortener
image: "${REPO}/${STATUS}appserver-urlshortener:${SRV_VERSION}"
image: "${REPO}/${STATUS}appserver-urlshortener:${DOCKER_TAG}"
onlyoffice-api:
build:
context: ./
dockerfile: "${DOCKERFILE}"
target: api
image: "${REPO}/${STATUS}appserver-api:${SRV_VERSION}"
image: "${REPO}/${STATUS}appserver-api:${DOCKER_TAG}"
onlyoffice-studio:
build:
context: ./
dockerfile: "${DOCKERFILE}"
target: studio
image: "${REPO}/${STATUS}appserver-studio:${SRV_VERSION}"
image: "${REPO}/${STATUS}appserver-studio:${DOCKER_TAG}"
onlyoffice-ssoauth:
build:
context: ./
dockerfile: "${DOCKERFILE}"
target: ssoauth
image: "${REPO}/${STATUS}appserver-ssoauth:${SRV_VERSION}"
image: "${REPO}/${STATUS}appserver-ssoauth:${DOCKER_TAG}"
onlyoffice-bin-share:
build:
context: ./
dockerfile: "${DOCKERFILE}"
target: bin_share
image: "${REPO}/${STATUS}appserver-bin-share:${SRV_VERSION}"
image: "${REPO}/${STATUS}appserver-bin-share:${DOCKER_TAG}"
onlyoffice-wait-bin-share:
build:
context: ./
dockerfile: "${DOCKERFILE}"
target: wait_bin_share
image: "${REPO}/${STATUS}appserver-wait-bin-share:${SRV_VERSION}"
image: "${REPO}/${STATUS}appserver-wait-bin-share:${DOCKER_TAG}"
onlyoffice-proxy:
build:
context: ./
dockerfile: "${DOCKERFILE}"
target: web
image: "${REPO}/${STATUS}appserver-proxy:${SRV_VERSION}"
image: "${REPO}/${STATUS}appserver-proxy:${DOCKER_TAG}"

View File

@ -1,8 +1,24 @@
#!/bin/bash
echo "##########################################################"
echo "############## Run App Service ####################"
echo "##########################################################"
# read parameters
if [ -n "$1" ]; then
DOTNET_RUN="${1}";
shift
fi
if [ -n "$1" ]; then
DOTNET_LOG_NAME="${1}";
shift
fi
while [ "$1" != "" ]; do
PARAMETERS="$PARAMETERS --${1}";
shift
done
echo "#-------------------------------------#"
echo "Run ${DOTNET_RUN}"
echo "#-------------------------------------#"
PRODUCT=${PRODUCT:-"onlyoffice"}
BASE_DIR="/app/${PRODUCT}"
@ -29,9 +45,6 @@ DOCUMENT_SERVER_JWT_SECRET=${DOCUMENT_SERVER_JWT_SECRET:-"your_jwt_secret"}
DOCUMENT_SERVER_JWT_HEADER=${DOCUMENT_SERVER_JWT_HEADER:-"AuthorizationJwt"}
DOCUMENT_SERVER_URL_PUBLIC=${DOCUMENT_SERVER_URL_PUBLIC:-"/ds-vpath/"}
DOCUMENT_SERVER_URL_INTERNAL=${DOCUMENT_SERVER_URL_INTERNAL:-"${SHEME}://${PRODUCT}-document-server/"}
DOCUMENT_SERVER_URL_CONVERTER=${DOCUMENT_SERVER_URL_CONVERTER:-"/ds-vpath/ConvertService.ashx"}
VIEWED_MEDIA=${VIEWED_MEDIA:-'".aac",".flac",".m4a",".mp3",".oga",".ogg",".wav",".f4v",".m4v",".mov",".mp4",".ogv",".webm",".avi"'}
FFMPEG_EXTS=${FFMPEG_EXTS:-'"avi", "mpeg", "mpg", "wmv"'}
ELK_SHEME=${ELK_SHEME:-"http"}
ELK_HOST=${ELK_HOST:-"${PRODUCT}-elasticsearch"}
@ -42,29 +55,12 @@ KAFKA_HOST=${KAFKA_HOST:-"kafka"}":9092"
APP_STORAGE_ROOT=${APP_STORAGE_ROOT:-"${BASE_DIR}/data/"}
if [ -n "$1" ]; then
DOTNET_RUN="${1}";
shift
fi
if [ -n "$1" ]; then
DOTNET_LOG_NAME="${1}";
shift
fi
while [ "$1" != "" ]; do
PARAMETERS="$PARAMETERS --${1}";
shift
done
sed -i "s!Server=.*;Pooling=!Server=${MYSQL_HOST};Port=3306;Database=${MYSQL_DATABASE};User ID=${MYSQL_USER};Password=${MYSQL_PASSWORD};Pooling=!g" ${PATH_TO_CONF}/appsettings.${APP_DOTNET_ENV}.json
sed -i "s!\"base-domain\".*,!\"base-domain\": \"${APP_CORE_BASE_DOMAIN}\",!g" ${PATH_TO_CONF}/appsettings.${APP_DOTNET_ENV}.json
sed -i "s!\"machinekey\".*,!\"machinekey\": \"${APP_CORE_MACHINEKEY}\",!g" ${PATH_TO_CONF}/appsettings.${APP_DOTNET_ENV}.json
sed -i "s!\"public\".*,!\"public\": \"${DOCUMENT_SERVER_URL_PUBLIC}\",!g" ${PATH_TO_CONF}/appsettings.${APP_DOTNET_ENV}.json
sed -i "s!\"internal\".*,!\"internal\": \"${DOCUMENT_SERVER_URL_INTERNAL}\",!g" ${PATH_TO_CONF}/appsettings.${APP_DOTNET_ENV}.json
sed -i "s!\"portal\".*!\"portal\": \"${APP_URL_PORTAL}\",!g" ${PATH_TO_CONF}/appsettings.${APP_DOTNET_ENV}.json
sed -i "s!\"viewed-media\".*!\"viewed-media\": \[${VIEWED_MEDIA}\]!g" ${PATH_TO_CONF}/appsettings.${APP_DOTNET_ENV}.json
sed -i "s!\"exts\".*!\"exts\": \[ ${FFMPEG_EXTS} \]!g" ${PATH_TO_CONF}/appsettings.${APP_DOTNET_ENV}.json
sed -i "0,/\"value\"/s!\"value\".*,!\"value\": \"${DOCUMENT_SERVER_JWT_SECRET}\",!" ${PATH_TO_CONF}/appsettings.${APP_DOTNET_ENV}.json
sed -i "s!\"header\".*!\"header\": \"${DOCUMENT_SERVER_JWT_HEADER}\"!" ${PATH_TO_CONF}/appsettings.${APP_DOTNET_ENV}.json
@ -73,7 +69,6 @@ sed -i "s!\"Host\".*!\"Host\": \"${ELK_HOST}\",!g" ${PATH_TO_CONF}/elastic.json
sed -i "s!\"Port\".*!\"Port\": \"${ELK_PORT}\",!g" ${PATH_TO_CONF}/elastic.json
sed -i "s!\"Threads\".*!\"Threads\": \"${ELK_THREADS}\"!g" ${PATH_TO_CONF}/elastic.json
sed -i "s!\"subfolder\".*!\"subfolder\": \"server\",!g" ${PATH_TO_CONF}/appsettings.services.json
sed -i "s!\"BootstrapServers\".*!\"BootstrapServers\": \"${KAFKA_HOST}\"!g" ${PATH_TO_CONF}/kafka.${APP_DOTNET_ENV}.json

View File

@ -1,5 +1,5 @@
#!/bin/bash
export SRV_VERSION=$DOCKER_TAG
export DOCKER_TAG=$DOCKER_TAG
BUILD_NUMBER="$(date "+%Y%m%d%H")"
docker-compose -f build.yml build \
--build-arg GIT_BRANCH=$SOURCE_BRANCH \

View File

@ -1,3 +1,3 @@
#!/bin/bash
export SRV_VERSION=$DOCKER_TAG
export DOCKER_TAG=$DOCKER_TAG
docker-compose -f build.yml push

View File

@ -0,0 +1,43 @@
version: "3.6"
services:
onlyoffice-zookeeper:
image: zookeeper:latest
container_name: ${ZOO_HOST}
restart: always
expose:
- "2181"
environment:
ZOO_MY_ID: 1
ZOO_PORT: ${ZOO_PORT:-2181}
ZOO_SERVER: ${ZOO_SERVER}
volumes:
- /app/onlyoffice/data/zookeeper/zoo_data:/data
- /app/onlyoffice/data/zookeeper/zoo_log:/datalog
onlyoffice-kafka:
image: confluentinc/cp-kafka:latest
container_name: ${KAFKA_HOST}
restart: always
expose:
- "9092"
depends_on:
- onlyoffice-zookeeper
environment:
KAFKA_ADVERTISED_LISTENERS: ${KAFKA_ADVERTISED_LISTENERS}
KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: ${KAFKA_LISTENER_SECURITY_PROTOCOL_MAP}
KAFKA_INTER_BROKER_LISTENER_NAME: ${KAFKA_INTER_BROKER_LISTENER_NAME}
KAFKA_ZOOKEEPER_CONNECT: ${KAFKA_ZOOKEEPER_CONNECT}
KAFKA_BROKER_ID: ${KAFKA_BROKER_ID}
KAFKA_LOG4J_LOGGERS: ${KAFKA_LOG4J_LOGGERS}
KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: ${KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR}
volumes:
#- /app/onlyoffice/data/kafka_data:/var/lib/kafka/data
- kafka_data:/var/lib/kafka/data
volumes:
kafka_data:
networks:
default:
external:
name: "onlyoffice"

View File

@ -18,7 +18,6 @@ x-service:
DOCUMENT_SERVER_JWT_HEADER: ${DOCUMENT_SERVER_JWT_HEADER}
DOCUMENT_SERVER_URL_PUBLIC: ${DOCUMENT_SERVER_URL_PUBLIC}
DOCUMENT_SERVER_URL_INTERNAL: ${DOCUMENT_SERVER_URL_INTERNAL}
DOCUMENT_SERVER_URL_CONVERTER: ${DOCUMENT_SERVER_URL_CONVERTER}
KAFKA_HOST: ${KAFKA_HOST}
ELK_HOST: ${ELK_HOST}
PROXY_HOST: ${PROXY_HOST}
@ -35,7 +34,7 @@ x-service:
services:
onlyoffice-notify:
<<: *x-service-base
image: "${REPO}/${STATUS}appserver-notify:${SRV_VERSION}"
image: "${REPO}/${STATUS}appserver-notify:${DOCKER_TAG}"
container_name: ${NOTIFY_HOST}
networks:

View File

@ -41,7 +41,7 @@
"value": "ffmpeg",
"exts": [ "avi", "mpeg", "mpg", "wmv" ]
},
"viewed-media": [".aac",".flac",".m4a",".mp3",".oga",".ogg",".wav",".f4v",".m4v",".mov",".mp4",".ogv",".webm",".avi"],
"viewed-media": [ ".aac",".flac",".m4a",".mp3",".oga",".ogg",".wav",".f4v",".m4v",".mov",".mp4",".ogv",".webm",".avi" ],
"thirdparty": {
"enable": [ "box", "dropboxv2", "docusign", "google", "onedrive", "nextcloud", "owncloud", "webdav", "kdrive", "yandex" ]
}