---
title: 'Облачный сервер с Nextcloud и ONLYOFFICE'
sidebar_label: 'Nextcloud и ONLYOFFICE'
sidebar_position: 9
toc_max_heading_level: 3
description: 'Как создать облачный сервер для совместного хранения данных и работы с документами'
---

import EditIcon from '@selectel/docux/icons/edit'
import CheckIcon from '@selectel/docux/icons/check'
import Tabs from '@theme/Tabs'
import TabItem from '@theme/TabItem'
import {TabItemLabel} from '@selectel/docux/components'
import {CustomTable} from '@selectel/docux/components'
import Formbricks from '@theme/MDXComponents/Formbricks'
import CopyIcon from '@selectel/docux/icons/copy'
import CreateServer from '@site/docs/_partials/cloud-servers/applications/create-server-for-apps.mdx'

# Облачный сервер с Nextcloud и ONLYOFFICE

Nextcloud — платформа с открытым исходным кодом для создания хранилища данных: обмена данными и их синхронизации, работы с документами и файлами.
Пользователи Nextcloud могут полностью контролировать свои данные.

ONLYOFFICE — сервис с открытым исходным кодом для совместной работы над документами: редактирования, рецензирования, контроля версий.

Вы можете [создать облачный сервер с готовыми приложениями Nextcloud и ONLYOFFICE](#create-cloud-server-with-nextcloud-and-onlyoffice).
В России приложение работает на облачном сервере с настроенной операционной системой [SelectOS 1 64-bit](https://selectos.selectel.ru/news/mega/).
В других [странах](/infrastructure/locations.mdx#country) — Ubuntu 22.04.

Перед созданием облачного сервера с приложением ознакомьтесь с [лицензионными соглашениями программного обеспечения](https://423.selcdn.ru/kb/license-agreements-for-application-images-LANG.pdf), которое входит в образ.

## Минимальные требования к ресурсам \{#minimum-requirements}

<CustomTable>
  <table>
    <thead>
      <th />

      <th>До 500 пользователей</th>
      <th>От 500 пользователей</th>
    </thead>

    <tbody>
      <tr>
        <th>Количество vCPU</th>
        <td>1</td>
        <td>2</td>
      </tr>

      <tr>
        <th>RAM</th>
        <td>2 ГБ</td>
        <td>4 ГБ</td>
      </tr>

      <tr>
        <th>Загрузочный диск</th>
        <td>20 ГБ</td>
        <td>40 ГБ</td>
      </tr>
    </tbody>
  </table>
</CustomTable>

## Создать облачный сервер с Nextcloud и ONLYOFFICE \{#create-cloud-server-with-nextcloud-and-onlyoffice}

Для работы Nextcloud и ONLYOFFICE облачный сервер должен быть доступен из интернета.
Для этого при создании сервера нужно создать приватную подсеть и подключить публичный плавающий IP-адрес.
Чтобы настроить Nextcloud и ONLYOFFICE, при создании сервера необходимо указать user data — пользовательские параметры конфигурации операционной системы.

Вы можете задать один из двух набор параметров:

* с автоматическим созданием базы данных PostgreSQL на сервере;
* с подключением созданной [облачной базы данных PostgreSQL](/managed-databases/postgresql/) версии выше 13.

После создания сервера с Nextcloud и ONLYOFFICE автоматически выпустится бесплатный [TLS-сертификат от Let’s Encrypt®](/certificates-manager/certificates/lets-encrypt.mdx) для домена, который вы укажете.
Для выпуска сертификата нужно добавить A-запись для домена и указать в значении записи публичный плавающий IP-адрес сервера.
Домен можно добавить в [DNS-хостинг Selectel (actual)](/dns-hosting/).

1. [Создайте публичный плавающий IP-адрес](#create-floating-ip).

2. [Добавьте A-запись для домена](#add-a-record).

3. [Создайте облачный сервер с Nextcloud и ONLYOFFICE](#create-nextcloud-and-onlyoffice-server).

### 1. Создать публичный плавающий IP-адрес \{#create-floating-ip}

Создайте публичный плавающий IP-адрес, чтобы облачный сервер с Nextcloud и ONLYOFFICE был доступен из интернета.

Используйте подраздел [Создать публичный плавающий IP-адрес](/cloud-servers/cloud-networks/public-floating-ip-addresses.mdx#create-public-floating-ip) инструкции [Публичные плавающие IP-адреса](/cloud-servers/cloud-networks/public-floating-ip-addresses.mdx).

### 2. Добавить А-запись для домена⁠ \{#add-a-record}

[Добавьте ресурсную запись](/dns-hosting/records/add-record.mdx), чтобы получить доступ к Nextcloud и ONLYOFFICE по домену.

Укажите:

* [тип ресурсных записей](/dns-hosting/records/add-record.mdx#record-types) в группе — A;
* значение записи — публичный плавающий IP-адрес, который вы [создали на этапе 1](#create-floating-ip).

### 3. Создать облачный сервер с Nextcloud и ONLYOFFICE \{#create-nextcloud-and-onlyoffice-server}

<CreateServer AppNameInPanel="Nextcloud" MinConfig="4 vCPU, RAM от 8 ГБ и размером загрузочного диска от 16 ГБ для 500 пользователей и менее" OptionalVolumes="Добавьте дополнительный" VolumeSize="Укажите размер сетевого диска от 50 ГБ. Размер диска зависит от потребностей хранения данных — например, если у вас 50 сотрудников и каждому нужно выделить 10 ГБ, укажите размер 500 ГБ" />

<div style={{paddingLeft:'2em'}}>
  <Tabs queryString="add-user-data">
    <TabItem value="standard" default>
      <TabItemLabel>
        Создание базы данных на сервере
      </TabItemLabel>

      ```yaml
      #cloud-config

      write_files:
      - path: "/opt/main.yml"
        permissions: "0644"
        content: |
          nextcloud_admin_name: "<administrator_name>"
          nextcloud_admin_pwd: "<administrator_password>"
          nextcloud_admin_email: "<root@example.com>"
          nextcloud_domain: "<example.com>"
      ```

      Укажите:

      * `<administrator_name>` — имя администратора Nextcloud;
      * `<administrator_password>` — пароль администратора Nextcloud. Должен быть более восьми символов;
      * `<root@example.com>` — электронная почта администратора Nextcloud для создания аккаунта и получения уведомлений Let’s Encrypt®;
      * `<example.com>` — домен для доступа к Nextcloud, который вы [добавили ранее](#add-a-record).
    </TabItem>

    <TabItem value="with-dbaas">
      <TabItemLabel>
        Подключение существующей облачной базы данных
      </TabItemLabel>

      ```yaml
      #cloud-config

      write_files:
      - path: "/opt/gomplate/values/user-values.yaml"
        permissions: "0644"
        content: |
          nextcloud_admin_name: "<administrator_name>"
          nextcloud_admin_pwd: "<administrator_password>"
          nextcloud_admin_email: "<root@example.com>"
          nextcloud_domain: "<example.com>"
          nextcloud_db_external: true
          nextcloud_db_host: "<host>;sslmode=verify-ca;sslrootcert=/etc/ssl/dbaas-ca.crt"
          nextcloud_db_name: "<database_name>"
          nextcloud_db_admin: "<database_user_name>"
          nextcloud_db_pwd: "<database_user_password>"
      ```

      Укажите:

      * `<administrator_name>` — имя администратора Nextcloud;
      * `<administrator_password>` — пароль администратора Nextcloud. Должен быть более восьми символов;
      * `<root@example.com>` — электронная почта администратора Nextcloud для создания аккаунта и получения уведомлений Let’s Encrypt®;
      * `<example.com>` — домен для доступа к Nextcloud, который вы [добавили ранее](#add-a-record);
      * `nextcloud_db_external: true` — параметр для использования облачной базы данных;
      * `<host>` — DNS-адрес облачной базы данных PostgreSQL. Можно посмотреть в [панели управления](https://my.selectel.ru/vpc/default/dbaas/): в верхнем меню нажмите **Продукты** → **Облачные базы данных** → страница кластера → вкладка **Настройки** → блок **Адреса и статусы нод** → вкладка **DNS-адреса**;
      * `<database_name>` — имя облачной базы данных PostgreSQL. Можно посмотреть в [панели управления](https://my.selectel.ru/vpc/default/dbaas/): в верхнем меню нажмите **Продукты** → **Облачные базы данных** → страница кластера → вкладка **Базы данных**;
      * `<database_user_name>` — имя пользователя облачной базы данных PostgreSQL. Можно посмотреть в [панели управления](https://my.selectel.ru/vpc/default/dbaas/): в верхнем меню нажмите **Продукты** → **Облачные базы данных** → страница кластера → вкладка **Базы данных** → карточка базы данных → поле **Владелец базы**;
      * `<database_user_password>` — пароль пользователя облачной базы данных PostgreSQL. Пароль не хранится в панели управления — если вы его потеряли, [измените пароль](/managed-databases/postgresql/manage-users.mdx#change-user-password).
    </TabItem>
  </Tabs>
</div>

<Formbricks />
