Merge branch 'main' into 'Apache-Kafka'

# Conflicts:
#   src/.vitepress/config.mts
#   src/index.md
This commit is contained in:
Левченко Людмила Алексеевна
2026-05-20 11:34:02 +03:00
224 changed files with 2467 additions and 2792 deletions
+155 -164
View File
@@ -1,8 +1,6 @@
import { defineConfig } from 'vitepress'
import { tabsMarkdownPlugin } from 'vitepress-plugin-tabs'
import { viteStaticCopy } from 'vite-plugin-static-copy'
import { overrideComponents } from './override-components'
import { resolve } from 'node:path'
import { fileURLToPath, URL } from 'node:url'
const gitlab = `<?xml version="1.0" encoding="UTF-8" standalone="no"?>
@@ -46,11 +44,10 @@ console.log({ base: typeof new_version !== 'undefined' ? '/' : '/docs/' })
// https://vitepress.dev/reference/site-config
export default defineConfig({
srcDir: ".",
title: " ",
title: 'Beeline Cloud',
description: "Документация Beeline Cloud",
head: [['link', { rel: 'icon', type: 'image/png', sizes: '32x32', href: '/bee-favicon.png' }]],
base: typeof new_version !== 'undefined' ? '/' : '/docs/',
appearance: false,
markdown: {
config(md) {
md.use(tabsMarkdownPlugin)
@@ -65,24 +62,7 @@ export default defineConfig({
replacement: fileURLToPath(new URL('./theme', import.meta.url))
},
],
},
plugins: [
viteStaticCopy({
targets: [
{
src: resolve(__dirname, '../../node_modules/@beeline/design-tokens/assets/fonts'),
dest: 'assets',
},
],
}),
],
css: {
preprocessorOptions: {
scss: {
api: 'modern-compiler',
},
},
},
}
},
locales: {
root: {
@@ -91,6 +71,14 @@ export default defineConfig({
}
},
themeConfig: {
siteTitle: false,
notFound: {
title: 'Страница не найдена',
quote: 'Похоже, вы зашли в тупик. Но не волнуйтесь — всегда можно вернуться на главную.',
linkLabel: 'вернуться на главную',
linkText: 'Вернуться на главную',
code: '404',
},
logo: {
light: '/img/logo-cloud.svg',
dark: '/img/logo-cloud.svg',
@@ -107,8 +95,14 @@ export default defineConfig({
buttonAriaLabel: 'Поиск'
},
modal: {
noResultsText: 'По вашему запросу ничего не найдено',
noResultsText: 'Не удалось загрузить данные',
resetButtonTitle: 'Сбросить',
displayDetails: 'Показать расширенный список',
footer: {
selectText: 'Выбрать',
closeText: 'Закрыть',
navigateText: 'Перейти',
}
}
}
}
@@ -151,20 +145,86 @@ export default defineConfig({
],
},
],
'/start/': [
'/legal/': [
{ text: 'Юридические документы', link: '/legal/index.md' },
],
'/security/': [
{
text: 'Сервисы информационной безопасности в Beeline Cloud', link: '/security/index.md',
},
{
text: 'Cloud Security Awareness (SA)', link: '/security/Cloud-SA/SA-index.md',
collapsed: true,
items: [
{
text: 'Состав сервиса SA', link: '/security/Cloud-SA/compond-index.md',
collapsed: true,
items: [
{ text: 'Обзор сервиса', link: '/security/Cloud-SA/compond-SA/about.md' },
{ text: 'Состав сервиса', link: '/security/Cloud-SA/compond-SA/compond-SA.md' },
{ text: 'Настройки сервиса по умолчанию', link: '/security/Cloud-SA/compond-SA/default-service.md' },
{ text: 'Почтовый ретранслятор (SMTP relay)', link: '/security/Cloud-SA/compond-SA/mail-relay.md' },
{ text: 'Мониторинг работоспособности платформы', link: '/security/Cloud-SA/compond-SA/monitoring.md' },
{ text: 'Модули платформы', link: '/security/Cloud-SA/compond-SA/platform-modules.md' },
{ text: 'Ограничения платформы', link: '/security/Cloud-SA/compond-SA/restrictions.md' },
{ text: 'Отказоустойчивость сервиса', link: '/security/Cloud-SA/compond-SA/stability.md' },
{ text: 'Шаблоны почтовых сообщений и веб-форм', link: '/security/Cloud-SA/compond-SA/templates.md' },
{ text: 'Дополнительные работы ', link: '/security/Cloud-SA/compond-SA/work.md' },
]
},
{ text: 'Качественные характеристики сервиса', link: '/security/Cloud-SA/characteristics.md' },
{ text: 'Инструкции для начала работы с сревисом', link: '/security/Cloud-SA/instructions.md' },
{ text: 'Порядок платежей', link: '/security/Cloud-SA/payment-procedure.md' },
{ text: 'Сроки и условия предоставления сервиса', link: '/security/Cloud-SA/provision.md' },
]
},
{
text: 'Начало работы в Beeline Cloud', link: '/start/index.md',
text: 'Cloud Vulnerability Scanner (VS)', link: '/security/Cloud-VS/VS-index.md',
collapsed: true,
items: [
{ text: 'Обзор сервиса VS', link: '/security/Cloud-VS/about.md'},
{ text: 'Варианты предоставления сервиса', link: '/security/Cloud-VS/provision-service.md' },
{ text: 'Мониторинг работоспособности и отказоустойчивость сервиса', link: '/security/Cloud-VS/monitoring.md' },
{ text: 'Состав работ', link: '/security/Cloud-VS/scope-work.md' },
{ text: 'Дополнительные работы', link: '/security/Cloud-VS/work.md' },
{ text: 'Зоны ответсвенности', link: '/security/Cloud-VS/areas-responsibility.md' },
{ text: 'Качественные характеристики сервиса', link: '/security/Cloud-VS/characteristics.md' },
{ text: 'Сроки предоставления сервиса', link: '/security/Cloud-VS/provision.md' },
{ text: 'Порядок платежей', link: '/security/Cloud-VS/payment-procedure.md' },
]
},
{
text: 'Cloud Mobile Device Management (MDM)', link: '/security/Cloud-MDM/MDM-index.md',
collapsed: true,
items: [
{ text: 'Обзор сервиса', link: '/security/Cloud-MDM/about.md' },
{
text: 'Описание сервиса MDM', link: '/security/Cloud-MDM/discription-index.md',
collapsed: true,
items: [
{ text: 'Состав сервиса', link: '/security/Cloud-MDM/description/compound.md' },
{ text: 'Архитектура сервиса', link: '/security/Cloud-MDM/description/architecture.md' },
{ text: 'Зоны ответственности', link: '/security/Cloud-MDM/description/areas-responsibility.md' },
{ text: 'Мониторинг работоспособности и отказоустойчивость сервиса', link: '/security/Cloud-MDM/description/monitoring.md' },
{ text: 'Дополнительные работы', link: '/security/Cloud-MDM/description/work.md' },
]
},
{ text: 'Качественные характеристики сервиса', link: '/security/Cloud-MDM/characteristics.md' },
{ text: 'Сроки и условия предоставления сервиса', link: '/security/Cloud-MDM/provision.md' },
{ text: 'Порядок платежей', link: '/security/Cloud-MDM/payments.md' },
{
text: 'Инструкиця', link: '/security/Cloud-MDM/instructions-index.md',
collapsed: true,
items: [
{ text: 'Инструкция', link: '/security/Cloud-MDM/instructions/instructions.md' },
{ text: 'Активация учетной записи', link: '/security/Cloud-MDM/instructions/activation.md' },
{ text: 'Режим Device Owner', link: '/security/Cloud-MDM/instructions/device-owner.md' },
]
},
],
},
{text: 'Начать работу', link: '/start/getting-started.md'},
{text: 'Бесплатный период', link: '/start/trial.md'},
{text: 'Платное использование', link: '/start/organization.md'},
],
'/PaaS/': [
{
text: 'Начало работы в Cloud PostgreSQL', link: '/PaaS/index.md',
},
{ text: 'Cloud PostgreSQL', link: '/PaaS/PostgreSQL/PostgreSQL-index.md',
text: 'Cloud NGFW', link: '/security/Cloud-NGFW/NGFW-index.md',
collapsed: true,
items: [
{text: 'Обзор сервиса', link: '/PaaS/PostgreSQL/about.md'},
@@ -206,10 +266,50 @@ export default defineConfig({
{text: 'Квоты и лимиты', link: '/backups/backup-quatos.md'},
]
},
{text: 'Резервное копирование виртуальных машин Beeline Cloud', link: '/backups/backup-internal-infra.md'},
{text: 'Резервное копирование собственной инфраструктуры в Beeline Cloud', link: '/backups/backup-external-infra.md'},
{text: 'Каталог резервных копий', link: '/backups/view-backups.md'},
{
text: 'Cloud NGFW F', link: '/security/Cloud-NGFW-F/NGFW-F-index.md',
collapsed: true,
items: [
{ text: 'Обзор сервиса', link: '/security/Cloud-NGFW-F/about.md'},
{ text: 'Порядок подключения сервиса', link: '/security/Cloud-NGFW-F/connection.md' },
{ text: 'Варианты предоставления', link: '/security/Cloud-NGFW-F/delivery-options.md' },
{ text: 'Состав сервиса', link: '/security/Cloud-NGFW-F/compound.md' },
{ text: 'Функциональные возможности', link: '/security/Cloud-NGFW-F/functional-capabilities.md' },
{ text: 'Порядок платежей', link: '/security/Cloud-NGFW-F/payment.md' },
{ text: 'Тестирование сервиса', link: '/security/Cloud-NGFW-F/testing.md' },
]
},
{
text: 'Cloud NGFW Pro', link: '/security/Cloud-NGFW-Pro/NGFW-Pro-index.md',
collapsed: true,
items: [
{ text: 'Обзор сервиса', link: '/security/Cloud-NGFW-Pro/about.md'},
{ text: 'Основные возможности', link: '/security/Cloud-NGFW-Pro/possibilities.md' },
{ text: 'Спецификация сервиса', link: '/security/Cloud-NGFW-Pro/specification.md' },
{ text: 'Состав сервиса', link: '/security/Cloud-NGFW-Pro/compound.md' },
{ text: 'Сроки и условия предоставления сервиса', link: '/security/Cloud-NGFW-Pro/provision.md' },
{ text: 'Демодоступ к сервису', link: '/security/Cloud-NGFW-Pro/demo-access.md' },
{ text: 'Порядок платежей', link: '/security/Cloud-NGFW-Pro/payment.md' },
]
},
],
'/PaaS/': [
{ text: 'PostgreSQL', link: '/PaaS/PostgreSQL/PostgreSQL-index.md' },
{ text: 'Обзор сервиса', link: '/PaaS/PostgreSQL/about.md' },
{ text: 'Параметры кластера', link: '/PaaS/PostgreSQL/cluster-parameter.md' },
{ text: 'Подключение', link: '/PaaS/PostgreSQL/connection.md' },
{ text: 'Grafana', link: '/PaaS/PostgreSQL/grafana.md' },
{ text: 'pgAdmin', link: '/PaaS/PostgreSQL/pgadmin.md' },
{ text: 'Возможности пользователя', link: '/PaaS/PostgreSQL/user-capabilities.md' },
],
'/finance/': [
{ text: 'Финансы', link: '/finance/about.md' },
{ text: 'Счета', wip: true },
{ text: 'Анализ затрат', link: '/finance/cost-analysis.md' },
{ text: 'Бюджеты', wip: true },
{ text: 'Прогнозирование', wip: true },
{ text: 'Рекомендации', wip: true },
{ text: 'Управление тегами', wip: true },
],
'/vdc/': [
{
@@ -219,23 +319,11 @@ export default defineConfig({
text: 'Обзор сервиса', link: '/vdc/vdc-overview.md',
collapsed: true,
items: [
{ text: 'О сервисе', link: '/vdc/vdc-about.md' },
{ text: 'Техническое описание', link: '/vdc/vdc-tech.md' },
{ text: 'Квоты и лимиты', link: '/vdc/vdc-quatos.md' },
{ text: 'О сервисе', link: '/vdc/vdc-about.md' },
{ text: 'Техническое описание', link: '/vdc/vdc-tech.md' },
]
},
{
text: 'Быстрый старт', link: '/vdc/vdc-getting-started.md'
},
{ text: 'Виртуальные дата-центры', link: '/vdc/vdc-how-to/vdc-index.md',
collapsed: true,
items: [
{ text: 'Создание дата-центра', link: '/vdc/vdc-how-to/vdc-create.md' },
{ text: 'Вход в дата-центр', link: '/vdc/vdc-how-to/vdc-enter.md' },
{ text: 'Управление дата-центром', link: '/vdc/vdc-how-to/vdc-manage.md'},
],
},
{ text: 'Подключиться к виртуальному дата-центру', link: '/vdc/vdc-getting-started.md' },
{ text: 'Виртуальные машины', link: '/vdc/vdc-how-to/vm/vm-index.md',
collapsed: true,
items: [
@@ -250,13 +338,13 @@ export default defineConfig({
{text: 'VMware Tools', link: '/vdc/vdc-how-to/vm/vmware-tools.md'},
],
},
{ text: 'Диски', link: '/vdc/vdc-how-to/disks/disks-index.md',
{ text: 'Диски',
collapsed: true,
items: [
{text: 'Обзор', link: '/vdc/vdc-how-to/disks/about.md'},
{text: 'Создание диска', link: '/vdc/vdc-how-to/disks/create-disk.md'},
{text: 'Проверка состояния диска', link: '/vdc/vdc-how-to/disks/view-disk.md'},
{text: 'Управление выделенными дисками', link: '/vdc/vdc-how-to/disks/attach-disk.md'},
{text: 'Подключение выделенного диска к ВМ', link: '/vdc/vdc-how-to/disks/attach-disk.md'},
{text: 'Изменение политики хранения дисков ВМ', link: '/vdc/vdc-how-to/disks/change-storage-policy-of-vm.md'},
{text: 'Редактирование параметров диска', link: '/vdc/vdc-how-to/disks/edit-disk.md'},
{text: 'Удаление диска', link: '/vdc/vdc-how-to/disks/delete-disk.md'},
@@ -269,20 +357,20 @@ export default defineConfig({
{text: 'Настройка доступа к ВМ из интернета', link: '/vdc/vdc-how-to/networks/allow-external-connections-to-vm.md'},
{text: 'Подключение ВМ в vApp к сети', link: '/vdc/vdc-how-to/networks/connect-vapp-to-network.md'},
{text: 'Подключение ВМ к интернету', link: '/vdc/vdc-how-to/networks/connect-vm-to-network.md'},
{text: 'Создание сети в организации и подключение к Edge Gateway', link: '/vdc/vdc-how-to/networks/create-network.md'},
{text: 'Создание сети в организации и подключение к Edge Gateway', link: '/vdc/vdc-how-to/networks/create-network.md'},
{text: 'Подключение сети к Edge Gateway', link: '/vdc/vdc-how-to/networks/connect-to-edge-gateway.md'},
{text: 'Создание Pre-Shared Key', link: '/vdc/vdc-how-to/networks/create-psk.md'},
{ text: 'Настройка site-to-site подключения с помощью IPSec', link: '/vdc/vdc-how-to/networks/how-to-setup-ipsec-vpn.md',
{text: 'Создание Pre-Shared Key', link: '/vdc/vdc-how-to/networks/create-psk.md'},
{text: 'Настройка site-to-site подключения с помощью IPSec', link: '/vdc/vdc-how-to/networks/how-to-setup-ipsec-vpn.md',
collapsed: true,
items: [
{text: 'Настройка IPSec VPN', link: '/vdc/vdc-how-to/networks/ipsec/setup-ipsec-vpn.md'},
{text: 'Настройка ASAv', link: '/vdc/vdc-how-to/networks/ipsec/asav.md'},
{text: 'Настройка CSR 1000v', link: '/vdc/vdc-how-to/networks/ipsec/csr1000v.md'},
{text: 'Настройка Fortigate', link: '/vdc/vdc-how-to/networks/ipsec/fortigate.md'},
{text: 'Проверить сетевую связанность', link: '/vdc/vdc-how-to/networks/ipsec/check-vpn-status.md'},
],
{text: 'Настройка ASAv для IPsec VPN', link: '/vdc/vdc-how-to/networks/ipsec/asav.md'},
{text: 'Настройка CSR 1000v для IPsec VPN', link: '/vdc/vdc-how-to/networks/ipsec/csr1000v.md'},
{text: 'Настройка Fortigate для IPsec VPN', link: '/vdc/vdc-how-to/networks/ipsec/fortigate.md'},
{text: 'Проверить сетевую связанность', link: '/vdc/vdc-how-to/networks/ipsec/check-vpn-status.md'},
],
},
],
],
},
{ text: 'Пользователи и роли', link: '/vdc/vdc-how-to/users/users-index.md',
collapsed: true,
@@ -303,108 +391,11 @@ export default defineConfig({
],
// { text: 'Тарификация', link: '/vdc/vdc-tarif.md' },
'/compute/': [
{
text: 'Виртуальные машины', link: '/compute/index.md',
},
{ text: 'Обзор сервиса', link: '/compute/compute-overview-index.md' ,
collapsed: true,
items: [
{ text: 'Техническое описание', link: '/compute/compute-overview.md' },
{ text: 'Квоты и лимиты', link: '/compute/compute-quatos.md' },
]
},
{text: 'Быстрый старт', link: '/compute/compute-getting-started.md'},
{ text: 'Виртуальные машины', link: '/compute/compute-how-to/compute-index.md',
collapsed: true,
items: [
{ text: 'Создание ВМ', link: '/compute/compute-how-to/compute-servers-create.md' },
{ text: 'Создание ВМ джамп-хоста', link: '/compute/compute-how-to/compute-servers-jump-create.md' },
{ text: 'Подключение к ВМ', link: '/compute/compute-how-to/compute-connect-index.md',
collapsed: true,
items: [
{ text: 'Подключение по SSH по внешнему IP-адресу с помощью ключевой пары', link: '/compute/compute-how-to/compute-connect-public.md'},
{ text: 'Подключение по SSH по внутреннему IP-адресу с помощью ключевой пары', link: '/compute/compute-how-to/compute-connect-inside.md' },
{ text: 'Подключение по SSH по логину и паролю', link: '/compute/compute-how-to/compute-connect-pwd.md' },
]
},
{ text: 'Управление ВМ', link: '/compute/compute-how-to/compute-servers-manage.md' },
],
},
{ text: 'Диски', link: '/compute/compute-how-to/compute-disks/compute-disk-index.md',
collapsed: true,
items: [
{ text: 'Обзор', link: '/compute/compute-how-to/compute-disks/compute-disk-about.md' },
{ text: 'Создание диска', link: '/compute/compute-how-to/compute-disks/compute-disk-create.md' },
{ text: 'Управление дисками', link: '/compute/compute-how-to/compute-disks/compute-disk-manage.md' },
{ text: 'Удаление диска', link: '/compute/compute-how-to/compute-disks/compute-disk-del.md' },
]
},
{ text: 'IP-адреса', link: '/compute/compute-how-to/compute-ip/compute-ip-index.md',
collapsed: true,
items: [
{ text: 'Обзор', link: '/compute/compute-how-to/compute-ip/compute-ip-about.md' },
{ text: 'Просмотр IP-адресов', link: '/compute/compute-how-to/compute-ip/compute-ip-view.md' },
{ text: 'Создание IP-адреса', link: '/compute/compute-how-to/compute-ip/compute-ip-create.md' },
{ text: 'Управление IP-адресами', link: '/compute/compute-how-to/compute-ip/compute-ip-manager.md' },
{ text: 'Удаление IP-адреса', link: '/compute/compute-how-to/compute-ip/compute-ip-del.md' },
]
},
{ text: 'Группы размещения', link: '/compute/compute-how-to/compute-placement-groups/compute-placement-groups-index.md',
collapsed: true,
items: [
{ text: 'Обзор', link: '/compute/compute-how-to/compute-placement-groups/compute-placement-groups-about.md'},
{ text: 'Создание группы размещения', link: '/compute/compute-how-to/compute-placement-groups/compute-placement-groups-create.md'},
{ text: 'Управление группами размещения', link: '/compute/compute-how-to/compute-placement-groups/compute-placement-groups-manager.md' },
{ text: 'Удаление группы размещения', link: '/compute/compute-how-to/compute-placement-groups/compute-placement-groups-del.md' },
]
},
{ text: 'Сети', link: '/compute/compute-how-to/compute-network/compute-network-index.md',
collapsed: true,
items: [
{ text: 'Настройка site-to-site VPN с помощью VyOS', link: '/compute/compute-how-to/compute-network/compute-vpn-vyos.md' },
{ text: 'Подключение ВМ закрытого контура к интернету', link: '/compute/compute-how-to/compute-network/compute-network-inside.md' },
],
},
],
'/admin/': [
'/monitoring/': [
{
text: 'Администрирование', link: '/admin/index.md',
text: 'Мониторинг', link: '/monitoring/about.md',
},
{text: 'Управление ключевыми парами', link: '/admin/ssh.md'},
],
'/vdi/': [
{
text: 'Виртуальные рабочие столы', link: '/vdi/index.md',
},
{
text: 'Обзор сервиса', link: '/vdi/vdi-overview.md',
collapsed: true,
items: [
{ text: 'О сервисе', link: '/vdi/vdi-about.md' },
{ text: 'Техническое описание', link: '/vdi/vdi-tech.md' },
{ text: 'Квоты и лимиты', link: '/vdi/vdi-quatos.md' },
{ text: 'Тарификация', link: '/vdi/vdi-tarif.md' },
]
},
{
text: 'Заказ виртуальных рабочих столов', link: '/vdi/vdi-how-to/vdi-create.md'
},
{
text: 'Настройка сервиса', link: '/vdi/vdi-how-to/vdi-nastroika.md',
collapsed: true,
items: [
{ text: 'Настройка интеграции с Active Directory', link: '/vdi/vdi-how-to/vdi-connect-to-ad.md' },
{ text: 'Настройка сети', link: '/vdi/vdi-how-to/vdi-interconnect.md' },
]
},
// {
// text: 'Gold-образ', link: '/vdi/vdi-how-to/vdi-gold.md'
// },
{
text: 'Подключение к виртуальному рабочему месту', link: '/vdi/vdi-how-to/vdi-connect.md'
},
],
],
},
},
}
@@ -44,8 +44,21 @@ watch(
<slot name="sidebar-nav-before" />
<div v-for="item in sidebarGroups" :key="item.text" class="group">
<VPSidebarItem :item="item" :depth="0" />
<div v-for="group in sidebarGroups" :key="group.text ?? ''" class="group">
<!-- Named group with collapsible items render via VPSidebarItem as-is -->
<template v-if="group.items && group.text">
<VPSidebarItem :item="group" :depth="0" />
</template>
<!-- Anonymous group (flat sidebar) render items one by one to handle WIP -->
<template v-else-if="group.items">
<template v-for="item in group.items" :key="item.text">
<div v-if="(item as any).wip" class="wip-item" data-tooltip="Раздел в разработке">
<span class="text">{{ item.text }}</span>
</div>
<VPSidebarItem v-else :item="item" :depth="0" />
</template>
</template>
<VPSidebarItem v-else :item="group" :depth="0" />
</div>
<slot name="sidebar-nav-after" />
@@ -109,6 +109,47 @@
padding-bottom: 0px !important;
}
.wip-item {
position: relative;
padding: 12px 32px;
cursor: default;
user-select: none;
.text {
color: rgba(25, 28, 52, 0.28) !important;
font-size: 15px;
font-weight: 400;
line-height: 18px;
letter-spacing: 0.2px;
}
&::after {
content: attr(data-tooltip);
position: absolute;
left: 32px;
top: calc(100% + 4px);
z-index: 100;
padding: 6px 10px;
border-radius: 6px;
background-color: rgba(9, 11, 22, 0.82);
color: #fff;
font-size: 13px;
line-height: 18px;
white-space: nowrap;
pointer-events: none;
opacity: 0;
transition: opacity 0s;
}
&:hover::after {
opacity: 1;
}
}
.dark .wip-item .text {
color: rgba(255, 255, 255, 0.22) !important;
}
.VPLocalNav.has-sidebar {
@include media.max(sm) {
padding-left: 0px;
+5 -2
View File
@@ -1,6 +1,9 @@
@use '@beeline/design-tokens/scss/font-face';
@use '@beeline/design-tokens/scss/font-face' with (
$font-path-beeline-sans: '/fonts/beeline-sans',
$font-path-roboto-mono: '/fonts/roboto-mono'
);
@use "@beeline/design-tokens/scss/iconfont/iconfont" with (
$font-path-iconfont: '../assets/fonts/iconfont'
$font-path-iconfont: '/fonts/iconfont'
);
@use "@beeline/design-tokens/scss/iconfont/icons";
@use '@beeline/design-tokens/scss/tokens/themes/dark';