Add the ability to specify an external hub for OCI docker (#301)

This commit is contained in:
Evgeniy Antonyuk 2024-08-14 12:21:04 +03:00 committed by GitHub
parent 204af6e047
commit 1ef4ec7e84
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
15 changed files with 86 additions and 87 deletions

View File

@ -1038,69 +1038,51 @@ get_env_parameter () {
echo ${VALUE//\"} echo ${VALUE//\"}
} }
get_available_version () { get_tag_from_hub () {
if [[ -z "$1" ]]; then
echo "image name is empty";
exit 1;
fi
if ! command_exists curl ; then if ! command_exists curl ; then
install_curl; install_service curl
fi fi
CREDENTIALS=""; if ! command_exists jq ; then
AUTH_HEADER=""; if command_exists yum; then
TAGS_RESP=""; if ! rpm -q epel-release > /dev/null 2>&1; then
rpm -ivh https://dl.fedoraproject.org/pub/epel/epel-release-latest-$REV.noarch.rpm
fi
fi
install_service jq
fi
if [[ -n ${HUB} ]]; then if [[ -n ${HUB} ]]; then
DOCKER_CONFIG="$HOME/.docker/config.json"; if [[ -n ${USERNAME} && -n ${PASSWORD} ]]; then
CREDENTIALS=$(echo -n "$USERNAME:$PASSWORD" | base64)
if [[ -f "$DOCKER_CONFIG" ]]; then elif [[ -f "$HOME/.docker/config.json" ]]; then
CREDENTIALS=$(jq -r '.auths."'$HUB'".auth' < "$DOCKER_CONFIG"); CREDENTIALS=$(jq -r --arg hub "${HUB}" '.auths | to_entries[] | select(.key | contains($hub)).value.auth // empty' "$HOME/.docker/config.json")
if [ "$CREDENTIALS" == "null" ]; then
CREDENTIALS="";
fi
fi fi
if [[ -z ${CREDENTIALS} && -n ${USERNAME} && -n ${PASSWORD} ]]; then [[ -n ${CREDENTIALS} ]] && AUTH_HEADER="Authorization: Basic $CREDENTIALS"
CREDENTIALS=$(echo -n "$USERNAME:$PASSWORD" | base64);
fi
if [[ -n ${CREDENTIALS} ]]; then HUB_URL="https://${HUB}/v2/${1/#$HUB\//}/tags/list"
AUTH_HEADER="Authorization: Basic $CREDENTIALS"; JQ_FILTER='.tags | join("\n")'
fi
REPO=$(echo $1 | sed "s/$HUB\///g");
TAGS_RESP=$(curl -s -H "$AUTH_HEADER" -X GET https://$HUB/v2/$REPO/tags/list);
TAGS_RESP=$(echo $TAGS_RESP | jq -r '.tags')
else else
if [[ -n ${USERNAME} && -n ${PASSWORD} ]]; then if [[ -n ${USERNAME} && -n ${PASSWORD} ]]; then
CREDENTIALS="{\"username\":\"$USERNAME\",\"password\":\"$PASSWORD\"}"; CREDENTIALS="{\"username\":\"$USERNAME\",\"password\":\"$PASSWORD\"}"
fi TOKEN=$(curl -s -H "Content-Type: application/json" -X POST -d "$CREDENTIALS" https://hub.docker.com/v2/users/login/ | jq -r '.token');
AUTH_HEADER="Authorization: JWT $TOKEN"
if [[ -n ${CREDENTIALS} ]]; then
LOGIN_RESP=$(curl -s -H "Content-Type: application/json" -X POST -d "$CREDENTIALS" https://hub.docker.com/v2/users/login/);
TOKEN=$(echo $LOGIN_RESP | jq -r '.token');
AUTH_HEADER="Authorization: JWT $TOKEN";
sleep 1; sleep 1;
fi fi
TAGS_RESP=$(curl -s -H "$AUTH_HEADER" -X GET https://hub.docker.com/v2/repositories/$1/tags/); HUB_URL="https://hub.docker.com/v2/repositories/${1}/tags/"
TAGS_RESP=$(echo $TAGS_RESP | jq -r '.results[].name') JQ_FILTER='.results[].name // empty'
fi fi
VERSION_REGEX="[0-9]+\.[0-9]+\.[0-9]+(\.[0-9]+)?$" TAGS_RESP=($(curl -s -H "${AUTH_HEADER}" -X GET "${HUB_URL}" | jq -r "${JQ_FILTER}"))
}
TAG_LIST="" get_available_version () {
get_tag_from_hub ${1}
for item in $TAGS_RESP VERSION_REGEX='^[0-9]+\.[0-9]+(\.[0-9]+){0,2}$'
do [ ${#TAGS_RESP[@]} -eq 1 ] && LATEST_TAG="${TAGS_RESP[0]}" || LATEST_TAG=$(printf "%s\n" "${TAGS_RESP[@]}" | grep -E "$VERSION_REGEX" | sort -V | tail -n 1)
if [[ $item =~ $VERSION_REGEX ]]; then
TAG_LIST="$item,$TAG_LIST"
fi
done
LATEST_TAG=$(echo $TAG_LIST | tr ',' '\n' | sort -t. -k 1,1n -k 2,2n -k 3,3n -k 4,4n | awk '/./{line=$0} END{print line}');
if [ ! -z "${LATEST_TAG}" ]; then if [ ! -z "${LATEST_TAG}" ]; then
echo "${LATEST_TAG}" | sed "s/\"//g" echo "${LATEST_TAG}" | sed "s/\"//g"
@ -1151,6 +1133,8 @@ set_mysql_params () {
} }
set_docspace_params() { set_docspace_params() {
HUB=${HUB:-$(get_env_parameter "HUB")};
ENV_EXTENSION=${ENV_EXTENSION:-$(get_env_parameter "ENV_EXTENSION" "${CONTAINER_NAME}")}; ENV_EXTENSION=${ENV_EXTENSION:-$(get_env_parameter "ENV_EXTENSION" "${CONTAINER_NAME}")};
APP_CORE_BASE_DOMAIN=${APP_CORE_BASE_DOMAIN:-$(get_env_parameter "APP_CORE_BASE_DOMAIN" "${CONTAINER_NAME}")}; APP_CORE_BASE_DOMAIN=${APP_CORE_BASE_DOMAIN:-$(get_env_parameter "APP_CORE_BASE_DOMAIN" "${CONTAINER_NAME}")};
EXTERNAL_PORT=${EXTERNAL_PORT:-$(get_env_parameter "EXTERNAL_PORT" "${CONTAINER_NAME}")}; EXTERNAL_PORT=${EXTERNAL_PORT:-$(get_env_parameter "EXTERNAL_PORT" "${CONTAINER_NAME}")};
@ -1188,13 +1172,6 @@ set_installation_type_data () {
} }
download_files () { download_files () {
if ! command_exists jq ; then
if command_exists yum; then
rpm -ivh https://dl.fedoraproject.org/pub/epel/epel-release-latest-$REV.noarch.rpm
fi
install_service jq
fi
if ! command_exists docker-compose; then if ! command_exists docker-compose; then
install_docker_compose install_docker_compose
fi fi
@ -1225,6 +1202,7 @@ download_files () {
echo "OK" echo "OK"
reconfigure HUB "${HUB%/}${HUB:+/}"
reconfigure STATUS ${STATUS} reconfigure STATUS ${STATUS}
reconfigure INSTALLATION_TYPE ${INSTALLATION_TYPE} reconfigure INSTALLATION_TYPE ${INSTALLATION_TYPE}
reconfigure NETWORK_NAME ${NETWORK_NAME} reconfigure NETWORK_NAME ${NETWORK_NAME}
@ -1261,7 +1239,7 @@ install_mysql_server () {
install_document_server () { install_document_server () {
reconfigure DOCUMENT_SERVER_JWT_HEADER ${DOCUMENT_SERVER_JWT_HEADER} reconfigure DOCUMENT_SERVER_JWT_HEADER ${DOCUMENT_SERVER_JWT_HEADER}
reconfigure DOCUMENT_SERVER_JWT_SECRET ${DOCUMENT_SERVER_JWT_SECRET} reconfigure DOCUMENT_SERVER_JWT_SECRET ${DOCUMENT_SERVER_JWT_SECRET}
reconfigure DOCUMENT_SERVER_IMAGE_NAME "${DOCUMENT_SERVER_IMAGE_NAME}:${DOCUMENT_SERVER_VERSION:-$(get_available_version "$DOCUMENT_SERVER_IMAGE_NAME")}" reconfigure DOCUMENT_SERVER_IMAGE_NAME "${HUB%/}${HUB:+/}${DOCUMENT_SERVER_IMAGE_NAME}:${DOCUMENT_SERVER_VERSION:-$(get_available_version "$DOCUMENT_SERVER_IMAGE_NAME")}"
if [[ -z ${DOCUMENT_SERVER_HOST} ]] && [ "$INSTALL_DOCUMENT_SERVER" == "true" ]; then if [[ -z ${DOCUMENT_SERVER_HOST} ]] && [ "$INSTALL_DOCUMENT_SERVER" == "true" ]; then
docker-compose -f $BASE_DIR/ds.yml up -d docker-compose -f $BASE_DIR/ds.yml up -d
elif [ "$INSTALL_DOCUMENT_SERVER" == "pull" ]; then elif [ "$INSTALL_DOCUMENT_SERVER" == "pull" ]; then
@ -1427,6 +1405,10 @@ make_swap () {
fi fi
} }
check_hub_connection() {
get_tag_from_hub ${IMAGE_NAME}
[ -z "$TAGS_RESP" ] && { echo -e "Unable to download tags from ${HUB:-hub.docker.com}.\nTry specifying another dockerhub name using -hub"; exit 1; } || true
}
start_installation () { start_installation () {
root_checking root_checking
@ -1458,6 +1440,8 @@ start_installation () {
docker_login docker_login
check_hub_connection
create_network create_network
domain_check domain_check

View File

@ -1,30 +1,45 @@
# docker-compose tags # # docker-compose tags #
HUB=""
PRODUCT=onlyoffice PRODUCT=onlyoffice
REPO=${PRODUCT} REPO=${PRODUCT}
INSTALLATION_TYPE=COMMUNITY INSTALLATION_TYPE=COMMUNITY
STATUS="" STATUS=""
DOCKER_IMAGE_PREFIX=${STATUS}docspace DOCKER_IMAGE_PREFIX=${STATUS}docspace
DOCKER_TAG=latest
CONTAINER_PREFIX=${PRODUCT}- CONTAINER_PREFIX=${PRODUCT}-
MYSQL_VERSION=8.3.0
MYSQL_IMAGE=mysql:${MYSQL_VERSION}
SERVICE_PORT=5050 SERVICE_PORT=5050
DOCUMENT_SERVER_IMAGE_NAME=onlyoffice/4testing-documentserver-ee:latest
DOCKERFILE=Dockerfile.app DOCKERFILE=Dockerfile.app
APP_DOTNET_ENV="" APP_DOTNET_ENV=""
EXTERNAL_PORT="80" EXTERNAL_PORT="80"
# opensearch stack # # images version #
DOCKER_TAG=latest
MYSQL_VERSION=8.3.0
PROXY_VERSION=latest
REDIS_VERSION=7
RABBITMQ_VERSION=3
ELK_VERSION=2.11.1 ELK_VERSION=2.11.1
FLUENT_BIT_VERSION=3.0.2
DASHBOARDS_VERSION=2.11.1
DOCUMENT_SERVER_VERSION=latest
# images name #
MYSQL_IMAGE=mysql:${MYSQL_VERSION}
PROXY_IMAGE_NAME=nginx:${PROXY_VERSION}
REDIS_IMAGE_NAME=redis:${REDIS_VERSION}
RABBITMQ_IMAGE_NAME=rabbitmq:${RABBITMQ_VERSION}
ELK_IMAGE_NAME=${REPO}/opensearch:${ELK_VERSION}
FLUENT_BIT_IMAGE_NAME=fluent/fluent-bit:${FLUENT_BIT_VERSION}
DASHBOARDS_IMAGE_NAME=opensearchproject/opensearch-dashboards:${DASHBOARDS_VERSION}
DOCUMENT_SERVER_IMAGE_NAME=${REPO}/4testing-documentserver-ee:${DOCUMENT_SERVER_VERSION}
# opensearch stack #
ELK_CONTAINER_NAME=${CONTAINER_PREFIX}opensearch ELK_CONTAINER_NAME=${CONTAINER_PREFIX}opensearch
ELK_SHEME=http ELK_SHEME=http
ELK_HOST="" ELK_HOST=""
ELK_PORT=9200 ELK_PORT=9200
DASHBOARDS_VERSION=2.11.1
DASHBOARDS_CONTAINER_NAME=${CONTAINER_PREFIX}opensearch-dashboards DASHBOARDS_CONTAINER_NAME=${CONTAINER_PREFIX}opensearch-dashboards
DASHBOARDS_USERNAME=onlyoffice DASHBOARDS_USERNAME=onlyoffice
DASHBOARDS_PASSWORD=onlyoffice DASHBOARDS_PASSWORD=onlyoffice
FLUENT_BIT_VERSION=3.0.2
FLUENT_BIT_CONTAINER_NAME=${CONTAINER_PREFIX}fluent-bit FLUENT_BIT_CONTAINER_NAME=${CONTAINER_PREFIX}fluent-bit
# app service environment # # app service environment #

View File

@ -1,6 +1,6 @@
services: services:
onlyoffice-opensearch-dashboards: onlyoffice-opensearch-dashboards:
image: opensearchproject/opensearch-dashboards:${DASHBOARDS_VERSION} image: ${HUB}${DASHBOARDS_IMAGE_NAME}
container_name: ${DASHBOARDS_CONTAINER_NAME} container_name: ${DASHBOARDS_CONTAINER_NAME}
restart: always restart: always
environment: environment:

View File

@ -1,6 +1,6 @@
services: services:
onlyoffice-mysql-server: onlyoffice-mysql-server:
image: ${MYSQL_IMAGE} image: ${HUB}${MYSQL_IMAGE}
cap_add: cap_add:
- SYS_NICE - SYS_NICE
container_name: ${MYSQL_CONTAINER_NAME} container_name: ${MYSQL_CONTAINER_NAME}

View File

@ -61,7 +61,7 @@ x-service: &x-service-base
services: services:
onlyoffice-backup-background-tasks: onlyoffice-backup-background-tasks:
<<: *x-service-base <<: *x-service-base
image: "${REPO}/${DOCKER_IMAGE_PREFIX}-backup-background:${DOCKER_TAG}" image: "${HUB}${REPO}/${DOCKER_IMAGE_PREFIX}-backup-background:${DOCKER_TAG}"
container_name: ${BACKUP_BACKGRUOND_TASKS_HOST} container_name: ${BACKUP_BACKGRUOND_TASKS_HOST}
healthcheck: healthcheck:
<<: *x-healthcheck <<: *x-healthcheck
@ -69,7 +69,7 @@ services:
onlyoffice-backup: onlyoffice-backup:
<<: *x-service-base <<: *x-service-base
image: "${REPO}/${DOCKER_IMAGE_PREFIX}-backup:${DOCKER_TAG}" image: "${HUB}${REPO}/${DOCKER_IMAGE_PREFIX}-backup:${DOCKER_TAG}"
container_name: ${BACKUP_HOST} container_name: ${BACKUP_HOST}
healthcheck: healthcheck:
<<: *x-healthcheck <<: *x-healthcheck
@ -77,7 +77,7 @@ services:
onlyoffice-clear-events: onlyoffice-clear-events:
<<: *x-service-base <<: *x-service-base
image: "${REPO}/${DOCKER_IMAGE_PREFIX}-clear-events:${DOCKER_TAG}" image: "${HUB}${REPO}/${DOCKER_IMAGE_PREFIX}-clear-events:${DOCKER_TAG}"
container_name: ${CLEAR_EVENTS_HOST} container_name: ${CLEAR_EVENTS_HOST}
healthcheck: healthcheck:
<<: *x-healthcheck <<: *x-healthcheck
@ -85,7 +85,7 @@ services:
onlyoffice-files: onlyoffice-files:
<<: *x-service-base <<: *x-service-base
image: "${REPO}/${DOCKER_IMAGE_PREFIX}-files:${DOCKER_TAG}" image: "${HUB}${REPO}/${DOCKER_IMAGE_PREFIX}-files:${DOCKER_TAG}"
container_name: ${FILES_HOST} container_name: ${FILES_HOST}
healthcheck: healthcheck:
<<: *x-healthcheck <<: *x-healthcheck
@ -93,7 +93,7 @@ services:
onlyoffice-files-services: onlyoffice-files-services:
<<: *x-service-base <<: *x-service-base
image: "${REPO}/${DOCKER_IMAGE_PREFIX}-files-services:${DOCKER_TAG}" image: "${HUB}${REPO}/${DOCKER_IMAGE_PREFIX}-files-services:${DOCKER_TAG}"
container_name: ${FILES_SERVICES_HOST} container_name: ${FILES_SERVICES_HOST}
healthcheck: healthcheck:
<<: *x-healthcheck <<: *x-healthcheck
@ -101,7 +101,7 @@ services:
onlyoffice-people-server: onlyoffice-people-server:
<<: *x-service-base <<: *x-service-base
image: "${REPO}/${DOCKER_IMAGE_PREFIX}-people-server:${DOCKER_TAG}" image: "${HUB}${REPO}/${DOCKER_IMAGE_PREFIX}-people-server:${DOCKER_TAG}"
container_name: ${PEOPLE_SERVER_HOST} container_name: ${PEOPLE_SERVER_HOST}
healthcheck: healthcheck:
<<: *x-healthcheck <<: *x-healthcheck
@ -109,14 +109,14 @@ services:
onlyoffice-socket: onlyoffice-socket:
<<: *x-service-base <<: *x-service-base
image: "${REPO}/${DOCKER_IMAGE_PREFIX}-socket:${DOCKER_TAG}" image: "${HUB}${REPO}/${DOCKER_IMAGE_PREFIX}-socket:${DOCKER_TAG}"
container_name: ${SOCKET_HOST} container_name: ${SOCKET_HOST}
expose: expose:
- ${SERVICE_PORT} - ${SERVICE_PORT}
onlyoffice-studio-notify: onlyoffice-studio-notify:
<<: *x-service-base <<: *x-service-base
image: "${REPO}/${DOCKER_IMAGE_PREFIX}-studio-notify:${DOCKER_TAG}" image: "${HUB}${REPO}/${DOCKER_IMAGE_PREFIX}-studio-notify:${DOCKER_TAG}"
container_name: ${STUDIO_NOTIFY_HOST} container_name: ${STUDIO_NOTIFY_HOST}
healthcheck: healthcheck:
<<: *x-healthcheck <<: *x-healthcheck
@ -124,7 +124,7 @@ services:
onlyoffice-api: onlyoffice-api:
<<: *x-service-base <<: *x-service-base
image: "${REPO}/${DOCKER_IMAGE_PREFIX}-api:${DOCKER_TAG}" image: "${HUB}${REPO}/${DOCKER_IMAGE_PREFIX}-api:${DOCKER_TAG}"
container_name: ${API_HOST} container_name: ${API_HOST}
healthcheck: healthcheck:
<<: *x-healthcheck <<: *x-healthcheck
@ -132,7 +132,7 @@ services:
onlyoffice-api-system: onlyoffice-api-system:
<<: *x-service-base <<: *x-service-base
image: "${REPO}/${DOCKER_IMAGE_PREFIX}-api-system:${DOCKER_TAG}" image: "${HUB}${REPO}/${DOCKER_IMAGE_PREFIX}-api-system:${DOCKER_TAG}"
container_name: ${API_SYSTEM_HOST} container_name: ${API_SYSTEM_HOST}
healthcheck: healthcheck:
<<: *x-healthcheck <<: *x-healthcheck
@ -140,7 +140,7 @@ services:
onlyoffice-studio: onlyoffice-studio:
<<: *x-service-base <<: *x-service-base
image: "${REPO}/${DOCKER_IMAGE_PREFIX}-studio:${DOCKER_TAG}" image: "${HUB}${REPO}/${DOCKER_IMAGE_PREFIX}-studio:${DOCKER_TAG}"
container_name: ${STUDIO_HOST} container_name: ${STUDIO_HOST}
healthcheck: healthcheck:
<<: *x-healthcheck <<: *x-healthcheck
@ -148,7 +148,7 @@ services:
onlyoffice-ssoauth: onlyoffice-ssoauth:
<<: *x-service-base <<: *x-service-base
image: "${REPO}/${DOCKER_IMAGE_PREFIX}-ssoauth:${DOCKER_TAG}" image: "${HUB}${REPO}/${DOCKER_IMAGE_PREFIX}-ssoauth:${DOCKER_TAG}"
container_name: ${SSOAUTH_HOST} container_name: ${SSOAUTH_HOST}
expose: expose:
- ${SERVICE_PORT} - ${SERVICE_PORT}
@ -156,7 +156,7 @@ services:
onlyoffice-doceditor: onlyoffice-doceditor:
<<: *x-service-base <<: *x-service-base
image: "${REPO}/${DOCKER_IMAGE_PREFIX}-doceditor:${DOCKER_TAG}" image: "${HUB}${REPO}/${DOCKER_IMAGE_PREFIX}-doceditor:${DOCKER_TAG}"
container_name: ${DOCEDITOR_HOST} container_name: ${DOCEDITOR_HOST}
expose: expose:
- "5013" - "5013"
@ -166,7 +166,7 @@ services:
onlyoffice-login: onlyoffice-login:
<<: *x-service-base <<: *x-service-base
image: "${REPO}/${DOCKER_IMAGE_PREFIX}-login:${DOCKER_TAG}" image: "${HUB}${REPO}/${DOCKER_IMAGE_PREFIX}-login:${DOCKER_TAG}"
container_name: ${LOGIN_HOST} container_name: ${LOGIN_HOST}
expose: expose:
- "5011" - "5011"
@ -175,7 +175,7 @@ services:
test: curl --fail http://${SERVICE_LOGIN}/login/health || exit 1 test: curl --fail http://${SERVICE_LOGIN}/login/health || exit 1
onlyoffice-router: onlyoffice-router:
image: "${REPO}/${DOCKER_IMAGE_PREFIX}-router:${DOCKER_TAG}" image: "${HUB}${REPO}/${DOCKER_IMAGE_PREFIX}-router:${DOCKER_TAG}"
container_name: ${ROUTER_HOST} container_name: ${ROUTER_HOST}
restart: always restart: always
healthcheck: healthcheck:

View File

@ -1,6 +1,6 @@
services: services:
onlyoffice-document-server: onlyoffice-document-server:
image: "${DOCUMENT_SERVER_IMAGE_NAME}" image: "${HUB}${DOCUMENT_SERVER_IMAGE_NAME}"
container_name: ${DOCUMENT_CONTAINER_NAME} container_name: ${DOCUMENT_CONTAINER_NAME}
# Strings below enable the JSON Web Token validation. # Strings below enable the JSON Web Token validation.
environment: environment:

View File

@ -1,6 +1,6 @@
services: services:
fluent-bit: fluent-bit:
image: fluent/fluent-bit:${FLUENT_BIT_VERSION} image: ${HUB}${FLUENT_BIT_IMAGE_NAME}
container_name: ${FLUENT_BIT_CONTAINER_NAME} container_name: ${FLUENT_BIT_CONTAINER_NAME}
restart: always restart: always
environment: environment:

View File

@ -13,7 +13,7 @@ x-service:
services: services:
onlyoffice-health-checks-ui: onlyoffice-health-checks-ui:
<<: *x-service-base <<: *x-service-base
image: "${REPO}/${DOCKER_IMAGE_PREFIX}-healthchecks:${DOCKER_TAG}" image: "${HUB}${REPO}/${DOCKER_IMAGE_PREFIX}-healthchecks:${DOCKER_TAG}"
container_name: ${HELTHCHECKS_HOST} container_name: ${HELTHCHECKS_HOST}
networks: networks:

View File

@ -1,6 +1,6 @@
services: services:
onlyoffice-migration-runner: onlyoffice-migration-runner:
image: "${REPO}/${DOCKER_IMAGE_PREFIX}-migration-runner:${DOCKER_TAG}" image: "${HUB}${REPO}/${DOCKER_IMAGE_PREFIX}-migration-runner:${DOCKER_TAG}"
container_name: ${MIGRATION_RUNNER_HOST} container_name: ${MIGRATION_RUNNER_HOST}
restart: "no" restart: "no"
environment: environment:

View File

@ -61,7 +61,7 @@ x-service:
services: services:
onlyoffice-notify: onlyoffice-notify:
<<: *x-service-base <<: *x-service-base
image: "${REPO}/${DOCKER_IMAGE_PREFIX}-notify:${DOCKER_TAG}" image: "${HUB}${REPO}/${DOCKER_IMAGE_PREFIX}-notify:${DOCKER_TAG}"
container_name: ${NOTIFY_HOST} container_name: ${NOTIFY_HOST}
healthcheck: healthcheck:
<<: *x-healthcheck <<: *x-healthcheck

View File

@ -1,6 +1,6 @@
services: services:
onlyoffice-opensearch: onlyoffice-opensearch:
image: onlyoffice/opensearch:${ELK_VERSION} image: ${HUB}${ELK_IMAGE_NAME}
container_name: ${ELK_CONTAINER_NAME} container_name: ${ELK_CONTAINER_NAME}
restart: always restart: always
environment: environment:

View File

@ -8,7 +8,7 @@ x-healthcheck:
services: services:
onlyoffice-proxy: onlyoffice-proxy:
image: nginx image: ${HUB}${PROXY_IMAGE_NAME}
container_name: ${PROXY_HOST} container_name: ${PROXY_HOST}
restart: always restart: always
healthcheck: healthcheck:

View File

@ -8,7 +8,7 @@ x-healthcheck:
services: services:
onlyoffice-proxy: onlyoffice-proxy:
image: nginx image: ${HUB}${PROXY_IMAGE_NAME}
container_name: ${PROXY_HOST} container_name: ${PROXY_HOST}
restart: always restart: always
healthcheck: healthcheck:

View File

@ -1,6 +1,6 @@
services: services:
onlyoffice-rabbitmq: onlyoffice-rabbitmq:
image: rabbitmq:3 image: ${HUB}${RABBITMQ_IMAGE_NAME}
container_name: ${RABBIT_CONTAINER_NAME} container_name: ${RABBIT_CONTAINER_NAME}
restart: always restart: always
expose: expose:

View File

@ -1,6 +1,6 @@
services: services:
onlyoffice-redis: onlyoffice-redis:
image: redis:7 image: ${HUB}${REDIS_IMAGE_NAME}
container_name: ${REDIS_CONTAINER_NAME} container_name: ${REDIS_CONTAINER_NAME}
restart: always restart: always
expose: expose: