Swarmica позволяет настроить публичный портал базы знаний в SEO-оптимизированном варианте, который улучшает индексацию поисковыми системами и позволяет дополнительно настраивать SEO-параметры, такие как Open Graph данные и т.д.
Для этого необходимо подключить и настроить сервис helpcenter.
Если вы пользуетесь облачной SaaS версией, обратитесь к нам в поддержку, чтобы подключить этот сервис.
Если вы пользуетесь коробочным решением on-premise, то эта статья предоставит инструкции для самостоятельной настройки.
Стандартная установка (начиная с v5.2.0)
Если у вас стандартная конфигурация, в которой Swarmica обслуживает и HTTP и HTTPS соединения, то проделайте следующие шаги:
- Установите версию Swarmica v5.2.x или выше
- Установите следующие значения переменных в
/root/swarmica/.env:
# Версия helpcenter, соответствует версии Swarmica, например для v5.2.0:
SW_HELPCENTER_VERSION=v5.2.0
# Адрес API для хелпцентра, должен совпадать с BASE_FRONTEND_URL,
# Если BASE_FRONTEND_URL=https://my.swarmica.tld
NEXT_PUBLIC_HELPCENTER_SERVER_API_URL=https://my.swarmica.tld
# Фича-флаг __helpcenter
FEATURES=__helpcenter,....
- Добавьте конфигурацию контейнера helpcenter в docker-compose.yml:
helpcenter:
image: reg.gl.swd.im/swarmica/helpcenter:${SW_HELPCENTER_VERSION}
restart: always
depends_on:
- django
env_file:
- .env
volumes:
- .env:/app/.env
labels:
- "traefik.enable=true"
- "traefik.http.services.helpcenter.loadbalancer.server.port=4000"
- "traefik.http.routers.helpcenter-router.rule=Host(`${SW_HOSTNAME}`) && (PathPrefix(`/category`)||PathRegexp(`^/article/.*$`)||PathPrefix(`/_next`)||PathPrefix(`/help`)||Path(`/robots/sitemap.xml`))"
- "traefik.http.routers.helpcenter-router.priority=11"
- "traefik.http.routers.helpcenter-router.entrypoints=web-secure"
- "traefik.http.routers.helpcenter-router.middlewares=secure-headers,compression"
- "traefik.http.routers.helpcenter-router.service=helpcenter"
- "traefik.http.routers.helpcenter-router.tls.certresolver=letsencrypt"
- Стяните образы и перезагрузите приложение:
docker compose pull
docker compose down
docker compose up -d
Установка за L7-балансировщиком (начиная с v5.3.0)
Если у вас Swarmica установлена за внешним балансировщиком, который терминирует HTTPS соединение, а Swarmica обслуживает только HTTP, то проделайте следующие шаги:
-
Установите версию Swarmica v5.3.x или выше:
-
Установите следующие значения переменных в
/root/swarmica/.env:
# Версия helpcenter, соответствует версии Swarmica, например для v5.3.0:
SW_HELPCENTER_VERSION=v5.3.0
# Адрес API для хелпцентра должен быть установлен в http://django:5000
NEXT_PUBLIC_HELPCENTER_SERVER_API_URL=http://django:5000
# Адрес django должен быть добавлен в DJANGO_ALLOWED_HOSTS:
# DJANGO_ALLOWED_HOSTS=django,my.swarmica.tld
# Должен быть включен флаг INSECURE_HTTP_SERVER=1
INSECURE_HTTP_SERVER=1
# Фича-флаг __helpcenter
FEATURES=__helpcenter,....
- Добавьте конфигурацию контейнера helpcenter в docker-compose.yml:
helpcenter:
image: reg.gl.swd.im/swarmica/helpcenter:${SW_HELPCENTER_VERSION}
restart: always
depends_on:
- django
env_file:
- .env
volumes:
- .env:/app/.env
labels:
- "traefik.enable=true"
- "traefik.http.services.helpcenter.loadbalancer.server.port=4000"
- "traefik.http.routers.helpcenter-router.rule=Host(`${SW_HOSTNAME}`) && (PathPrefix(`/category`)||PathRegexp(`^/article/.*$`)||PathPrefix(`/_next`)||PathPrefix(`/help`)||Path(`/robots/sitemap.xml`))"
- "traefik.http.routers.helpcenter-router.priority=11"
- "traefik.http.routers.helpcenter-router.entrypoints=web"
- "traefik.http.routers.helpcenter-router.middlewares=compression"
- "traefik.http.routers.helpcenter-router.service=helpcenter"
- Стяните образы и перезагрузите приложение:
docker compose pull
docker compose down
docker compose up -d