Add the ability to specify an external hub for OCI docker (#301)
This commit is contained in:
parent
204af6e047
commit
1ef4ec7e84
@ -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
|
||||||
|
@ -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 #
|
||||||
|
@ -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:
|
||||||
|
@ -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}
|
||||||
|
@ -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:
|
||||||
|
@ -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:
|
||||||
|
@ -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:
|
||||||
|
@ -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:
|
||||||
|
@ -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:
|
||||||
|
@ -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
|
||||||
|
@ -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:
|
||||||
|
@ -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:
|
||||||
|
@ -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:
|
||||||
|
@ -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:
|
||||||
|
@ -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:
|
||||||
|
Loading…
Reference in New Issue
Block a user