Общие сведения
Надёжность и безопасность
Покупка лицензии
Начало работы
Роли в системе
Проекты
Концепции
Компоненты
Инструкции
Задачи
Финансы
Ресурсы
Таймшиты
Клиенты
Вики
Затраты
Отчёты и аналитика
FAQ
Типы отчётов
Тип отчёта «Акты»
Тип отчёта «Баланс отсутствий»
Тип отчёта «Бронирование»
Тип отчёта «Биллинг»
Тип отчёта «Версии проектов»
Тип отчёта «Задачи»
Тип отчёта «Задачи проектов»
Тип отчёта «Затраты»
Тип отчёта «Заявки на затраты»
Тип отчёта «Заявки на отсутствия»
Тип отчёта «История ставок пользователей»
Тип отчёта «Запросы ресурсов»
Тип отчёта «Навыки пользователей»
Тип отчёта «Пользователи»
Тип отчёта «Проводки»
Тип отчёта «Ресурсный план»
Тип отчёта «Ресурсный план (по версиям)»
Тип отчёта «Проекты»
Тип отчёта «Сертификаты пользователей»
Тип отчёта «Счета»
Тип отчёта «Счета (строки)»
Тип отчёта «Таймшиты»
Тип отчёта «Таймшиты детально»
Тип отчёта «Финансы»
Тип отчёта «Структура работ»
Тип отчёта «Центры затрат проектов»
Тип отчёта «Задания воркфлоу»
Тип отчета Клиенты
Тип отчета «Контакты»
Тип отчёта «Сделки»
Тип отчёта «История состояний сделок»
Тип отчёта «Взаимодействия»
Использование отчётов
Группировка данных источника
Группировка данных в отчёте
Типы виджетов
Общие отчёты и шаблоны
Настройка отчёта
Экспорт отчётов
Пользовательские настройки отчёта
Вычисляемые поля
Особые колонки отчётов с временными рядами
Использование панелей мониторинга
Публикация панелей
Фильтры источников данных
Настройка и администрирование
Типовой порядок настройки системы
Язык формул и выражений
On-premises
API
История изменений
Термины и определения

Развёртывание клиентской части

Обновлено: 19.06.2025

Клиентская часть представляет собой веб-приложение, которое загружается в браузер пользователя. Контейнер — это статический сайт для хостинга клиентского приложения. В качестве веб-сервера используется nginx.

URL приложения — это адрес, по которому пользователь будет получать доступ к приложению, например, https://app.timetta.com.

Пример конфигурации

Конфигурация nginx:

apiVersion: v1
kind: ConfigMap
metadata:
  name: client-host-nginx-conf
  namespace: timetta
data:
  nginx.conf: |
    user nginx;
    worker_processes  1;
    events{}
    http {
        include /etc/nginx/mime.types;
        server {
            listen 80 default_server;        
            root /usr/share/nginx/html;
            index index.html;
            location / {
                   try_files $uri $uri/ /index.html =404;
            }
        }
    }
---

Конфигурация клиентской части:

apiVersion: v1
kind: ConfigMap
metadata:
  name: client-host-timetta-conf
  namespace: timetta
data:
  config.json: |
    {
      "api": {
        "url": "https://api.your-domain.com" <=== Указать нужное
      },
      "passport": {
        "url": "https://auth.your-domain.com" <=== Указать нужное
      },
      "notificationHub": {
        "url": "https://web-socket.your-domain.com" <=== Указать нужное
      }
    }
---

Конфигурация деплоймента и сервиса:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: client-host-deployment
  namespace: timetta
  labels:
    app: client-host
spec:
  selector:
    matchLabels:
      app: client-host-app
  template:
    metadata:
      labels:
        app: client-host-app
    spec:
      containers:
        - name: client-host
          image: cr.yandex/crpr8bvek949tq2fuqkf/client-host:latest
          imagePullPolicy: "Always"
          ports:
            - protocol: TCP
              containerPort: 80
          volumeMounts:
            - name: nginx-conf
              mountPath: /etc/nginx/nginx.conf
              subPath: nginx.conf
              readOnly: true
            - name: timetta-conf
              mountPath: /usr/share/nginx/html/assets/config.json
              subPath: config.json
              readOnly: true
      volumes:
        - name: nginx-conf
          configMap:
            name: client-host-nginx-conf
            items:
              - key: nginx.conf
                path: nginx.conf
        - name: timetta-conf
          configMap:
            name: client-host-timetta-conf
            items:
              - key: config.json
                path: config.json

---
apiVersion: v1
kind: Service
metadata:
  name: client-host-service
  namespace: timetta
spec:
  selector:
    app: client-host-app
  ports:
    - protocol: TCP
      port: 80
      targetPort: 80

---

Проверка

  1. В браузере откройте адрес приложения (в примере app.your-domain.com).
  2. Убедитесь, что приложение скачивается.
  3. Проверьте, что TLS-сертификат выдан и действителен.

Содержание

Пример конфигурации Проверка
Ничего не найдено

Перейти на русскую версию?