2022-07-27 13:48:00 +00:00
|
|
|
ARG SRC_PATH="/app/onlyoffice/src"
|
|
|
|
ARG BUILD_PATH="/var/www"
|
2023-01-19 18:55:21 +00:00
|
|
|
ARG DOTNET_SDK="mcr.microsoft.com/dotnet/sdk:7.0"
|
|
|
|
ARG DOTNET_RUN="mcr.microsoft.com/dotnet/aspnet:7.0"
|
2022-07-27 13:48:00 +00:00
|
|
|
|
|
|
|
FROM $DOTNET_SDK AS base
|
2022-05-30 20:21:45 +00:00
|
|
|
ARG RELEASE_DATE="2016-06-22"
|
2020-12-25 11:27:26 +00:00
|
|
|
ARG DEBIAN_FRONTEND=noninteractive
|
2021-07-16 17:14:37 +00:00
|
|
|
ARG PRODUCT_VERSION=0.0.0
|
|
|
|
ARG BUILD_NUMBER=0
|
2022-07-27 13:48:00 +00:00
|
|
|
ARG GIT_BRANCH="master"
|
2021-04-07 09:15:27 +00:00
|
|
|
ARG SRC_PATH
|
|
|
|
ARG BUILD_PATH
|
2022-07-27 13:48:00 +00:00
|
|
|
ARG BUILD_ARGS="build"
|
|
|
|
ARG DEPLOY_ARGS="deploy"
|
|
|
|
ARG DEBUG_INFO="true"
|
2023-04-28 15:57:33 +00:00
|
|
|
ARG PUBLISH_CNF="Release"
|
2020-12-25 11:27:26 +00:00
|
|
|
|
2020-12-30 07:51:40 +00:00
|
|
|
LABEL onlyoffice.appserver.release-date="${RELEASE_DATE}" \
|
2020-12-25 11:27:26 +00:00
|
|
|
maintainer="Ascensio System SIA <support@onlyoffice.com>"
|
|
|
|
|
|
|
|
ENV LANG=en_US.UTF-8 \
|
|
|
|
LANGUAGE=en_US:en \
|
|
|
|
LC_ALL=en_US.UTF-8
|
|
|
|
|
2022-07-29 08:51:38 +00:00
|
|
|
RUN apt-get -y update && \
|
2022-09-13 07:54:45 +00:00
|
|
|
apt-get install -yq \
|
|
|
|
sudo \
|
|
|
|
locales \
|
|
|
|
git \
|
|
|
|
npm && \
|
2020-12-25 11:27:26 +00:00
|
|
|
locale-gen en_US.UTF-8 && \
|
2021-07-22 16:27:30 +00:00
|
|
|
npm install --global yarn && \
|
2023-09-01 09:27:41 +00:00
|
|
|
echo "deb [signed-by=/usr/share/keyrings/nodesource.gpg] https://deb.nodesource.com/node_18.x nodistro main" | tee /etc/apt/sources.list.d/nodesource.list && \
|
|
|
|
curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | gpg --no-default-keyring --keyring gnupg-ring:/usr/share/keyrings/nodesource.gpg --import && \
|
|
|
|
chmod 644 /usr/share/keyrings/nodesource.gpg && \
|
|
|
|
apt-get -y update && \
|
2022-09-13 07:54:45 +00:00
|
|
|
apt-get install -y nodejs && \
|
|
|
|
rm -rf /var/lib/apt/lists/*
|
2022-06-28 06:41:07 +00:00
|
|
|
|
2022-11-01 07:17:29 +00:00
|
|
|
ADD https://api.github.com/repos/ONLYOFFICE/DocSpace/git/refs/heads/${GIT_BRANCH} version.json
|
2021-10-06 13:43:18 +00:00
|
|
|
RUN echo ${GIT_BRANCH} && \
|
2022-10-19 15:41:24 +00:00
|
|
|
git clone --recurse-submodules -b ${GIT_BRANCH} https://github.com/ONLYOFFICE/DocSpace.git ${SRC_PATH}
|
2020-12-25 11:27:26 +00:00
|
|
|
|
2021-10-06 13:43:18 +00:00
|
|
|
RUN cd ${SRC_PATH} && \
|
2022-06-14 07:06:44 +00:00
|
|
|
# mkdir -p /app/onlyoffice/config/ && cp -rf config/* /app/onlyoffice/config/ && \
|
|
|
|
mkdir -p /app/onlyoffice/ && \
|
2023-04-21 10:11:22 +00:00
|
|
|
find config/ -maxdepth 1 -name "*.json" | grep -v test | grep -v dev | xargs tar -cvf config.tar && \
|
2022-06-14 07:06:44 +00:00
|
|
|
tar -C "/app/onlyoffice/" -xvf config.tar && \
|
2022-06-17 06:31:24 +00:00
|
|
|
cp config/*.config /app/onlyoffice/config/ && \
|
2021-04-07 09:15:27 +00:00
|
|
|
mkdir -p /etc/nginx/conf.d && cp -f config/nginx/onlyoffice*.conf /etc/nginx/conf.d/ && \
|
2020-12-25 11:27:26 +00:00
|
|
|
mkdir -p /etc/nginx/includes/ && cp -f config/nginx/includes/onlyoffice*.conf /etc/nginx/includes/ && \
|
2021-07-16 17:14:37 +00:00
|
|
|
sed -i "s/\"number\".*,/\"number\": \"${PRODUCT_VERSION}.${BUILD_NUMBER}\",/g" /app/onlyoffice/config/appsettings.json && \
|
2020-12-25 11:27:26 +00:00
|
|
|
sed -e 's/#//' -i /etc/nginx/conf.d/onlyoffice.conf && \
|
2021-04-07 09:15:27 +00:00
|
|
|
cd ${SRC_PATH}/build/install/common/ && \
|
2021-10-05 13:52:26 +00:00
|
|
|
bash build-frontend.sh -sp "${SRC_PATH}" -ba "${BUILD_ARGS}" -da "${DEPLOY_ARGS}" -di "${DEBUG_INFO}" && \
|
2021-10-05 08:34:44 +00:00
|
|
|
bash build-backend.sh -sp "${SRC_PATH}" && \
|
2023-04-28 15:51:57 +00:00
|
|
|
bash publish-backend.sh -pc "${PUBLISH_CNF}" -sp "${SRC_PATH}" -bp "${BUILD_PATH}" && \
|
2021-06-10 12:42:04 +00:00
|
|
|
cp -rf ${SRC_PATH}/products/ASC.Files/Server/DocStore ${BUILD_PATH}/products/ASC.Files/server/ && \
|
2021-04-29 12:27:50 +00:00
|
|
|
rm -rf ${SRC_PATH}/common/* && \
|
|
|
|
rm -rf ${SRC_PATH}/web/ASC.Web.Core/* && \
|
|
|
|
rm -rf ${SRC_PATH}/web/ASC.Web.Studio/* && \
|
|
|
|
rm -rf ${SRC_PATH}/products/ASC.Files/Server/* && \
|
|
|
|
rm -rf ${SRC_PATH}/products/ASC.Files/Service/* && \
|
2022-07-05 14:07:58 +00:00
|
|
|
rm -rf ${SRC_PATH}/products/ASC.People/Server/*
|
|
|
|
|
2021-04-26 16:08:48 +00:00
|
|
|
COPY config/mysql/conf.d/mysql.cnf /etc/mysql/conf.d/mysql.cnf
|
2020-12-25 11:27:26 +00:00
|
|
|
|
2022-09-13 07:54:45 +00:00
|
|
|
FROM $DOTNET_RUN as dotnetrun
|
2021-04-07 09:15:27 +00:00
|
|
|
ARG BUILD_PATH
|
2022-07-27 13:48:00 +00:00
|
|
|
ARG SRC_PATH
|
2021-04-07 09:15:27 +00:00
|
|
|
ENV BUILD_PATH=${BUILD_PATH}
|
2022-05-30 20:21:45 +00:00
|
|
|
ENV SRC_PATH=${SRC_PATH}
|
2020-12-25 11:27:26 +00:00
|
|
|
|
|
|
|
# add defualt user and group for no-root run
|
2022-07-29 08:51:38 +00:00
|
|
|
RUN mkdir -p /var/log/onlyoffice && \
|
2020-12-25 11:27:26 +00:00
|
|
|
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 && \
|
2022-07-05 14:07:58 +00:00
|
|
|
chown onlyoffice:onlyoffice /var/log -R && \
|
|
|
|
chown onlyoffice:onlyoffice /var/www -R && \
|
2020-12-25 11:27:26 +00:00
|
|
|
apt-get -y update && \
|
2022-09-13 07:54:45 +00:00
|
|
|
apt-get install -yq \
|
|
|
|
sudo \
|
|
|
|
nano \
|
|
|
|
curl \
|
|
|
|
vim \
|
|
|
|
python3-pip \
|
|
|
|
libgdiplus && \
|
2023-05-02 15:01:33 +00:00
|
|
|
pip3 install --upgrade jsonpath-ng multipledispatch netaddr netifaces && \
|
2022-09-13 07:54:45 +00:00
|
|
|
rm -rf /var/lib/apt/lists/*
|
2022-05-30 20:21:45 +00:00
|
|
|
|
2022-06-17 06:31:24 +00:00
|
|
|
COPY --from=base --chown=onlyoffice:onlyoffice /app/onlyoffice/config/* /app/onlyoffice/config/
|
2022-05-25 08:55:07 +00:00
|
|
|
|
2021-04-07 09:15:27 +00:00
|
|
|
#USER onlyoffice
|
2020-12-25 11:27:26 +00:00
|
|
|
EXPOSE 5050
|
2022-07-05 14:07:58 +00:00
|
|
|
ENTRYPOINT ["python3", "docker-entrypoint.py"]
|
2020-12-25 11:27:26 +00:00
|
|
|
|
2022-11-10 14:53:55 +00:00
|
|
|
FROM node:18.12.1-slim as noderun
|
2022-05-24 09:16:47 +00:00
|
|
|
ARG BUILD_PATH
|
2022-05-30 20:21:45 +00:00
|
|
|
ARG SRC_PATH
|
2022-05-24 09:16:47 +00:00
|
|
|
ENV BUILD_PATH=${BUILD_PATH}
|
2022-05-30 20:21:45 +00:00
|
|
|
ENV SRC_PATH=${SRC_PATH}
|
2022-05-24 09:16:47 +00:00
|
|
|
|
2022-07-29 08:51:38 +00:00
|
|
|
RUN mkdir -p /var/log/onlyoffice && \
|
2022-05-24 09:16:47 +00:00
|
|
|
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 && \
|
|
|
|
apt-get -y update && \
|
2022-09-13 07:54:45 +00:00
|
|
|
apt-get install -yq \
|
|
|
|
sudo \
|
|
|
|
nano \
|
|
|
|
curl \
|
|
|
|
vim \
|
|
|
|
python3-pip && \
|
2023-05-03 08:53:44 +00:00
|
|
|
pip3 install --upgrade jsonpath-ng multipledispatch netaddr netifaces && \
|
2022-09-13 07:54:45 +00:00
|
|
|
rm -rf /var/lib/apt/lists/*
|
2022-05-30 20:21:45 +00:00
|
|
|
|
2022-06-17 06:31:24 +00:00
|
|
|
COPY --from=base --chown=onlyoffice:onlyoffice /app/onlyoffice/config/* /app/onlyoffice/config/
|
2022-05-24 09:16:47 +00:00
|
|
|
|
|
|
|
EXPOSE 5050
|
2022-07-05 14:07:58 +00:00
|
|
|
ENTRYPOINT ["python3", "docker-entrypoint.py"]
|
2020-12-25 11:27:26 +00:00
|
|
|
|
2021-04-14 12:45:16 +00:00
|
|
|
## Nginx image ##
|
2023-09-04 09:03:36 +00:00
|
|
|
FROM openresty/openresty:focal AS router
|
2021-04-07 09:15:27 +00:00
|
|
|
ARG SRC_PATH
|
|
|
|
ARG BUILD_PATH
|
2021-05-18 09:36:21 +00:00
|
|
|
ARG COUNT_WORKER_CONNECTIONS=1024
|
|
|
|
ENV DNS_NAMESERVER=127.0.0.11 \
|
|
|
|
COUNT_WORKER_CONNECTIONS=$COUNT_WORKER_CONNECTIONS \
|
|
|
|
MAP_HASH_BUCKET_SIZE=""
|
2020-12-25 11:27:26 +00:00
|
|
|
|
2022-07-29 08:51:38 +00:00
|
|
|
RUN apt-get -y update && \
|
2021-04-07 09:15:27 +00:00
|
|
|
apt-get install -yq vim && \
|
2023-08-09 15:54:32 +00:00
|
|
|
addgroup --system --gid 107 onlyoffice && \
|
|
|
|
adduser -uid 104 --quiet --home /var/www/onlyoffice --system --gid 107 onlyoffice && \
|
2022-09-13 07:54:45 +00:00
|
|
|
rm -rf /var/lib/apt/lists/* && \
|
2021-04-07 09:15:27 +00:00
|
|
|
rm -rf /usr/share/nginx/html/*
|
2020-12-25 11:27:26 +00:00
|
|
|
|
2021-04-07 09:15:27 +00:00
|
|
|
# copy static services files and config values
|
2021-04-14 12:45:16 +00:00
|
|
|
COPY --from=base /etc/nginx/conf.d /etc/nginx/conf.d
|
|
|
|
COPY --from=base /etc/nginx/includes /etc/nginx/includes
|
2022-08-02 09:21:05 +00:00
|
|
|
COPY --from=base ${SRC_PATH}/build/deploy/client ${BUILD_PATH}/client
|
2021-07-22 16:27:30 +00:00
|
|
|
COPY --from=base ${SRC_PATH}/build/deploy/public ${BUILD_PATH}/public
|
2023-08-19 09:57:51 +00:00
|
|
|
COPY /config/nginx/docker-entrypoint.sh /docker-entrypoint.sh
|
|
|
|
COPY /config/nginx/docker-entrypoint.d /docker-entrypoint.d
|
2020-12-25 11:27:26 +00:00
|
|
|
COPY /config/nginx/templates/upstream.conf.template /etc/nginx/templates/upstream.conf.template
|
2021-05-18 09:36:21 +00:00
|
|
|
COPY /config/nginx/templates/nginx.conf.template /etc/nginx/nginx.conf.template
|
2023-09-04 09:03:36 +00:00
|
|
|
COPY prepare-nginx-router.sh /docker-entrypoint.d/prepare-nginx-router.sh
|
2020-12-25 11:27:26 +00:00
|
|
|
|
2023-08-19 09:57:51 +00:00
|
|
|
# changes for upstream configure
|
|
|
|
RUN sed -i 's/127.0.0.1:5010/$service_api_system/' /etc/nginx/conf.d/onlyoffice.conf && \
|
2022-09-13 07:54:45 +00:00
|
|
|
sed -i 's/127.0.0.1:5012/$service_backup/' /etc/nginx/conf.d/onlyoffice.conf && \
|
|
|
|
sed -i 's/127.0.0.1:5007/$service_files/' /etc/nginx/conf.d/onlyoffice.conf && \
|
|
|
|
sed -i 's/127.0.0.1:5004/$service_people_server/' /etc/nginx/conf.d/onlyoffice.conf && \
|
|
|
|
sed -i 's/127.0.0.1:5000/$service_api/' /etc/nginx/conf.d/onlyoffice.conf && \
|
|
|
|
sed -i 's/127.0.0.1:5003/$service_studio/' /etc/nginx/conf.d/onlyoffice.conf && \
|
|
|
|
sed -i 's/127.0.0.1:9899/$service_socket/' /etc/nginx/conf.d/onlyoffice.conf && \
|
|
|
|
sed -i 's/127.0.0.1:9834/$service_sso/' /etc/nginx/conf.d/onlyoffice.conf && \
|
|
|
|
sed -i 's/127.0.0.1:5013/$service_doceditor/' /etc/nginx/conf.d/onlyoffice.conf && \
|
|
|
|
sed -i 's/127.0.0.1:5011/$service_login/' /etc/nginx/conf.d/onlyoffice.conf && \
|
2023-03-09 09:05:49 +00:00
|
|
|
sed -i 's/127.0.0.1:5033/$service_healthchecks/' /etc/nginx/conf.d/onlyoffice.conf && \
|
2022-10-11 09:44:22 +00:00
|
|
|
sed -i 's/$public_root/\/var\/www\/public\//' /etc/nginx/conf.d/onlyoffice.conf && \
|
2023-09-04 09:03:36 +00:00
|
|
|
sed -i 's/http:\/\/172.*/$document_server;/' /etc/nginx/conf.d/onlyoffice.conf && \
|
|
|
|
sed -i '/client_body_temp_path/ i \ \ \ \ $MAP_HASH_BUCKET_SIZE' /etc/nginx/nginx.conf.template && \
|
|
|
|
sed -i 's/\(worker_connections\).*;/\1 $COUNT_WORKER_CONNECTIONS;/' /etc/nginx/nginx.conf.template
|
2020-12-25 11:27:26 +00:00
|
|
|
|
2023-08-09 15:54:32 +00:00
|
|
|
ENTRYPOINT [ "/docker-entrypoint.sh" ]
|
|
|
|
|
|
|
|
CMD ["/usr/local/openresty/bin/openresty", "-g", "daemon off;"]
|
|
|
|
|
2022-07-28 12:33:03 +00:00
|
|
|
## Doceditor ##
|
2022-09-13 07:54:45 +00:00
|
|
|
FROM noderun as doceditor
|
2022-11-17 18:36:14 +00:00
|
|
|
WORKDIR ${BUILD_PATH}/products/ASC.Editors/editor
|
2022-07-28 12:33:03 +00:00
|
|
|
|
2022-11-17 17:06:43 +00:00
|
|
|
COPY --chown=onlyoffice:onlyoffice docker-entrypoint.py ./docker-entrypoint.py
|
2022-07-29 08:51:38 +00:00
|
|
|
COPY --from=base --chown=onlyoffice:onlyoffice ${SRC_PATH}/build/deploy/editor/ .
|
2022-11-17 18:36:14 +00:00
|
|
|
|
|
|
|
CMD ["server.js", "ASC.Editors"]
|
2022-09-13 07:54:45 +00:00
|
|
|
|
|
|
|
## Login ##
|
|
|
|
FROM noderun as login
|
|
|
|
WORKDIR ${BUILD_PATH}/products/ASC.Login/login
|
|
|
|
|
2022-11-17 17:06:43 +00:00
|
|
|
COPY --chown=onlyoffice:onlyoffice docker-entrypoint.py ./docker-entrypoint.py
|
2022-09-13 07:54:45 +00:00
|
|
|
COPY --from=base --chown=onlyoffice:onlyoffice ${SRC_PATH}/build/deploy/login/ .
|
2022-11-17 18:36:14 +00:00
|
|
|
|
|
|
|
CMD ["server.js", "ASC.Login"]
|
2022-07-28 12:33:03 +00:00
|
|
|
|
2022-07-26 09:26:42 +00:00
|
|
|
## ASC.Data.Backup.BackgroundTasks ##
|
2022-09-13 07:54:45 +00:00
|
|
|
FROM dotnetrun AS backup_background
|
2022-07-26 09:26:42 +00:00
|
|
|
WORKDIR ${BUILD_PATH}/services/ASC.Data.Backup.BackgroundTasks/
|
2020-12-25 11:27:26 +00:00
|
|
|
|
2022-07-05 14:07:58 +00:00
|
|
|
COPY --chown=onlyoffice:onlyoffice docker-entrypoint.py ./docker-entrypoint.py
|
2022-07-26 09:26:42 +00:00
|
|
|
COPY --from=base --chown=onlyoffice:onlyoffice ${BUILD_PATH}/services/ASC.Data.Backup.BackgroundTasks/service/ .
|
2021-04-07 09:15:27 +00:00
|
|
|
|
2023-02-28 13:18:07 +00:00
|
|
|
CMD ["ASC.Data.Backup.BackgroundTasks.dll", "ASC.Data.Backup.BackgroundTasks", "core:eventBus:subscriptionClientName=asc_event_bus_backup_queue"]
|
2022-06-02 07:50:36 +00:00
|
|
|
|
2022-10-27 10:39:21 +00:00
|
|
|
# ASC.ApiSystem ##
|
|
|
|
FROM dotnetrun AS api_system
|
|
|
|
WORKDIR ${BUILD_PATH}/services/ASC.ApiSystem/
|
|
|
|
|
|
|
|
COPY --chown=onlyoffice:onlyoffice docker-entrypoint.py ./docker-entrypoint.py
|
|
|
|
COPY --from=base --chown=onlyoffice:onlyoffice ${BUILD_PATH}/services/ASC.ApiSystem/service/ .
|
|
|
|
|
2022-11-01 07:17:29 +00:00
|
|
|
CMD ["ASC.ApiSystem.dll", "ASC.ApiSystem"]
|
2022-10-27 10:39:21 +00:00
|
|
|
|
2022-06-02 07:50:36 +00:00
|
|
|
## ASC.ClearEvents ##
|
2022-09-13 07:54:45 +00:00
|
|
|
FROM dotnetrun AS clear-events
|
2022-06-02 07:50:36 +00:00
|
|
|
WORKDIR ${BUILD_PATH}/services/ASC.ClearEvents/
|
|
|
|
|
2022-07-05 14:07:58 +00:00
|
|
|
COPY --chown=onlyoffice:onlyoffice docker-entrypoint.py ./docker-entrypoint.py
|
2022-07-26 09:26:42 +00:00
|
|
|
COPY --from=base --chown=onlyoffice:onlyoffice ${BUILD_PATH}/services/ASC.ClearEvents/service/ .
|
2022-06-02 07:50:36 +00:00
|
|
|
|
|
|
|
CMD ["ASC.ClearEvents.dll", "ASC.ClearEvents"]
|
|
|
|
|
2021-04-07 09:15:27 +00:00
|
|
|
## ASC.Data.Backup ##
|
2022-09-13 07:54:45 +00:00
|
|
|
FROM dotnetrun AS backup
|
2022-06-02 07:50:36 +00:00
|
|
|
WORKDIR ${BUILD_PATH}/services/ASC.Data.Backup/
|
2020-12-25 11:27:26 +00:00
|
|
|
|
2022-07-05 14:07:58 +00:00
|
|
|
COPY --chown=onlyoffice:onlyoffice docker-entrypoint.py ./docker-entrypoint.py
|
2022-06-01 14:04:02 +00:00
|
|
|
COPY --from=base --chown=onlyoffice:onlyoffice ${BUILD_PATH}/services/ASC.Data.Backup/service/ .
|
2020-12-25 11:27:26 +00:00
|
|
|
|
2022-07-05 14:07:58 +00:00
|
|
|
CMD ["ASC.Data.Backup.dll", "ASC.Data.Backup"]
|
2020-12-25 11:27:26 +00:00
|
|
|
|
2021-04-07 09:15:27 +00:00
|
|
|
## ASC.Files ##
|
2022-09-13 07:54:45 +00:00
|
|
|
FROM dotnetrun AS files
|
2021-04-07 09:15:27 +00:00
|
|
|
WORKDIR ${BUILD_PATH}/products/ASC.Files/server/
|
2020-12-25 11:27:26 +00:00
|
|
|
|
2022-07-05 14:07:58 +00:00
|
|
|
COPY --chown=onlyoffice:onlyoffice docker-entrypoint.py ./docker-entrypoint.py
|
2021-04-14 12:45:16 +00:00
|
|
|
COPY --from=base --chown=onlyoffice:onlyoffice ${BUILD_PATH}/products/ASC.Files/server/ .
|
2020-12-25 11:27:26 +00:00
|
|
|
|
2022-07-05 14:07:58 +00:00
|
|
|
CMD ["ASC.Files.dll", "ASC.Files"]
|
2020-12-25 11:27:26 +00:00
|
|
|
|
2021-04-07 09:15:27 +00:00
|
|
|
## ASC.Files.Service ##
|
2022-09-13 07:54:45 +00:00
|
|
|
FROM dotnetrun AS files_services
|
2023-04-12 10:03:10 +00:00
|
|
|
ENV LD_LIBRARY_PATH=/usr/local/lib:/usr/local/lib64
|
2021-04-07 09:15:27 +00:00
|
|
|
WORKDIR ${BUILD_PATH}/products/ASC.Files/service/
|
2020-12-25 11:27:26 +00:00
|
|
|
|
2022-07-05 14:07:58 +00:00
|
|
|
COPY --chown=onlyoffice:onlyoffice docker-entrypoint.py ./docker-entrypoint.py
|
2021-04-14 12:45:16 +00:00
|
|
|
COPY --from=base --chown=onlyoffice:onlyoffice ${BUILD_PATH}/services/ASC.Files.Service/service/ .
|
2023-04-12 10:03:10 +00:00
|
|
|
COPY --from=onlyoffice/ffvideo:6.0 --chown=onlyoffice:onlyoffice /usr/local /usr/local/
|
2020-12-25 11:27:26 +00:00
|
|
|
|
2023-02-28 13:18:07 +00:00
|
|
|
CMD ["ASC.Files.Service.dll", "ASC.Files.Service", "core:eventBus:subscriptionClientName=asc_event_bus_files_service_queue"]
|
2020-12-25 11:27:26 +00:00
|
|
|
|
2021-04-07 09:15:27 +00:00
|
|
|
## ASC.Notify ##
|
2022-09-13 07:54:45 +00:00
|
|
|
FROM dotnetrun AS notify
|
2022-06-02 07:50:36 +00:00
|
|
|
WORKDIR ${BUILD_PATH}/services/ASC.Notify/service
|
2020-12-25 11:27:26 +00:00
|
|
|
|
2022-07-05 14:07:58 +00:00
|
|
|
COPY --chown=onlyoffice:onlyoffice docker-entrypoint.py ./docker-entrypoint.py
|
2021-04-14 12:45:16 +00:00
|
|
|
COPY --from=base --chown=onlyoffice:onlyoffice ${BUILD_PATH}/services/ASC.Notify/service/ .
|
2020-12-25 11:27:26 +00:00
|
|
|
|
2023-02-28 13:18:07 +00:00
|
|
|
CMD ["ASC.Notify.dll", "ASC.Notify", "core:eventBus:subscriptionClientName=asc_event_bus_notify_queue"]
|
2020-12-25 11:27:26 +00:00
|
|
|
|
2021-04-07 09:15:27 +00:00
|
|
|
## ASC.People ##
|
2022-09-13 07:54:45 +00:00
|
|
|
FROM dotnetrun AS people_server
|
2021-04-07 09:15:27 +00:00
|
|
|
WORKDIR ${BUILD_PATH}/products/ASC.People/server/
|
2020-12-25 11:27:26 +00:00
|
|
|
|
2022-07-05 14:07:58 +00:00
|
|
|
COPY --chown=onlyoffice:onlyoffice docker-entrypoint.py ./docker-entrypoint.py
|
2021-04-14 12:45:16 +00:00
|
|
|
COPY --from=base --chown=onlyoffice:onlyoffice ${BUILD_PATH}/products/ASC.People/server/ .
|
2020-12-25 11:27:26 +00:00
|
|
|
|
2022-07-05 14:07:58 +00:00
|
|
|
CMD ["ASC.People.dll", "ASC.People"]
|
2020-12-25 11:27:26 +00:00
|
|
|
|
2022-06-01 06:48:55 +00:00
|
|
|
## ASC.Socket.IO ##
|
2022-09-13 07:54:45 +00:00
|
|
|
FROM noderun AS socket
|
2022-06-02 07:50:36 +00:00
|
|
|
WORKDIR ${BUILD_PATH}/services/ASC.Socket.IO/
|
2020-12-25 11:27:26 +00:00
|
|
|
|
2022-07-05 14:07:58 +00:00
|
|
|
COPY --chown=onlyoffice:onlyoffice docker-entrypoint.py ./docker-entrypoint.py
|
2022-05-30 20:21:45 +00:00
|
|
|
COPY --from=base --chown=onlyoffice:onlyoffice ${BUILD_PATH}/services/ASC.Socket.IO/service/ .
|
2020-12-25 11:27:26 +00:00
|
|
|
|
2022-06-01 06:48:55 +00:00
|
|
|
CMD ["server.js", "ASC.Socket.IO"]
|
2020-12-25 11:27:26 +00:00
|
|
|
|
2022-07-26 09:26:42 +00:00
|
|
|
## ASC.SsoAuth ##
|
2022-09-13 07:54:45 +00:00
|
|
|
FROM noderun AS ssoauth
|
2022-07-26 09:26:42 +00:00
|
|
|
WORKDIR ${BUILD_PATH}/services/ASC.SsoAuth/
|
|
|
|
|
|
|
|
COPY --chown=onlyoffice:onlyoffice docker-entrypoint.py ./docker-entrypoint.py
|
|
|
|
COPY --from=base --chown=onlyoffice:onlyoffice ${BUILD_PATH}/services/ASC.SsoAuth/service/ .
|
|
|
|
|
|
|
|
CMD ["app.js", "ASC.SsoAuth"]
|
|
|
|
|
2021-04-07 09:15:27 +00:00
|
|
|
## ASC.Studio.Notify ##
|
2022-09-13 07:54:45 +00:00
|
|
|
FROM dotnetrun AS studio_notify
|
2022-06-02 07:50:36 +00:00
|
|
|
WORKDIR ${BUILD_PATH}/services/ASC.Studio.Notify/service/
|
2021-04-07 09:15:27 +00:00
|
|
|
|
2022-07-05 14:07:58 +00:00
|
|
|
COPY --chown=onlyoffice:onlyoffice docker-entrypoint.py ./docker-entrypoint.py
|
2021-04-14 12:45:16 +00:00
|
|
|
COPY --from=base --chown=onlyoffice:onlyoffice ${BUILD_PATH}/services/ASC.Studio.Notify/service/ .
|
2021-04-07 09:15:27 +00:00
|
|
|
|
2022-07-05 14:07:58 +00:00
|
|
|
CMD ["ASC.Studio.Notify.dll", "ASC.Studio.Notify"]
|
2020-12-25 11:27:26 +00:00
|
|
|
|
2021-04-07 09:15:27 +00:00
|
|
|
## ASC.Web.Api ##
|
2022-09-13 07:54:45 +00:00
|
|
|
FROM dotnetrun AS api
|
2022-06-02 07:50:36 +00:00
|
|
|
WORKDIR ${BUILD_PATH}/studio/ASC.Web.Api/
|
2020-12-25 11:27:26 +00:00
|
|
|
|
2022-07-05 14:07:58 +00:00
|
|
|
COPY --chown=onlyoffice:onlyoffice docker-entrypoint.py ./docker-entrypoint.py
|
2021-04-14 12:45:16 +00:00
|
|
|
COPY --from=base --chown=onlyoffice:onlyoffice ${BUILD_PATH}/services/ASC.Web.Api/service/ .
|
2021-04-07 09:15:27 +00:00
|
|
|
|
2022-07-05 14:07:58 +00:00
|
|
|
CMD ["ASC.Web.Api.dll", "ASC.Web.Api"]
|
2021-04-07 09:15:27 +00:00
|
|
|
|
|
|
|
## ASC.Web.Studio ##
|
2022-09-13 07:54:45 +00:00
|
|
|
FROM dotnetrun AS studio
|
2022-06-02 07:50:36 +00:00
|
|
|
WORKDIR ${BUILD_PATH}/studio/ASC.Web.Studio/
|
2020-12-25 11:27:26 +00:00
|
|
|
|
2022-07-05 14:07:58 +00:00
|
|
|
COPY --chown=onlyoffice:onlyoffice docker-entrypoint.py ./docker-entrypoint.py
|
2021-04-14 12:45:16 +00:00
|
|
|
COPY --from=base --chown=onlyoffice:onlyoffice ${BUILD_PATH}/services/ASC.Web.Studio/service/ .
|
2020-12-25 11:27:26 +00:00
|
|
|
|
2022-07-05 14:07:58 +00:00
|
|
|
CMD ["ASC.Web.Studio.dll", "ASC.Web.Studio"]
|
2021-05-18 09:36:21 +00:00
|
|
|
|
2023-01-17 08:09:20 +00:00
|
|
|
## ASC.Web.HealthChecks.UI ##
|
|
|
|
FROM dotnetrun AS healthchecks
|
|
|
|
WORKDIR ${BUILD_PATH}/services/ASC.Web.HealthChecks.UI/service
|
|
|
|
|
|
|
|
COPY --chown=onlyoffice:onlyoffice docker-healthchecks-entrypoint.sh ./docker-healthchecks-entrypoint.sh
|
|
|
|
COPY --from=base --chown=onlyoffice:onlyoffice ${BUILD_PATH}/services/ASC.Web.HealthChecks.UI/service/ .
|
|
|
|
|
|
|
|
ENTRYPOINT ["./docker-healthchecks-entrypoint.sh"]
|
|
|
|
CMD ["ASC.Web.HealthChecks.UI.dll", "ASC.Web.HealthChecks.UI"]
|
|
|
|
|
2022-07-27 13:48:00 +00:00
|
|
|
## ASC.Migration.Runner ##
|
|
|
|
FROM $DOTNET_RUN AS onlyoffice-migration-runner
|
|
|
|
ARG BUILD_PATH
|
|
|
|
ARG SRC_PATH
|
|
|
|
ENV BUILD_PATH=${BUILD_PATH}
|
|
|
|
ENV SRC_PATH=${SRC_PATH}
|
|
|
|
WORKDIR ${BUILD_PATH}/services/ASC.Migration.Runner/
|
|
|
|
COPY ./docker-migration-entrypoint.sh ./docker-migration-entrypoint.sh
|
|
|
|
COPY --from=base ${SRC_PATH}/ASC.Migration.Runner/service/ .
|
|
|
|
|
|
|
|
ENTRYPOINT ["./docker-migration-entrypoint.sh"]
|
|
|
|
|
2021-05-18 09:36:21 +00:00
|
|
|
## image for k8s bin-share ##
|
|
|
|
FROM busybox:latest AS bin_share
|
2023-08-08 14:31:13 +00:00
|
|
|
RUN mkdir -p /app/ASC.Files/server && \
|
|
|
|
mkdir -p /app/ASC.People/server && \
|
2021-05-18 09:36:21 +00:00
|
|
|
addgroup --system --gid 107 onlyoffice && \
|
|
|
|
adduser -u 104 onlyoffice --home /var/www/onlyoffice --system -G onlyoffice
|
|
|
|
|
|
|
|
COPY bin-share-docker-entrypoint.sh /app/docker-entrypoint.sh
|
2023-08-08 14:31:13 +00:00
|
|
|
COPY --from=base /var/www/products/ASC.Files/server/ /app/ASC.Files/server/
|
|
|
|
COPY --from=base /var/www/products/ASC.People/server/ /app/ASC.People/server/
|
2021-05-18 09:36:21 +00:00
|
|
|
ENTRYPOINT ["./app/docker-entrypoint.sh"]
|
|
|
|
|
|
|
|
## image for k8s wait-bin-share ##
|
|
|
|
FROM busybox:latest AS wait_bin_share
|
|
|
|
RUN mkdir /app
|
|
|
|
|
|
|
|
COPY wait-bin-share-docker-entrypoint.sh /app/docker-entrypoint.sh
|
|
|
|
ENTRYPOINT ["./app/docker-entrypoint.sh"]
|