Установка через Docker

Необходимые условия
  • Docker и Docker Compose установлены
  • Убедитесь, что сервис Docker запущен

1. Создайте docker-compose.yml

# Создайте папку с именем my-project (или любое другое) для хранения системных файлов, которые генерирует NocoBase
mkdir my-project && cd my-project

# Создайте пустой файл docker-compose.yml
vi docker-compose.yml

2. Настройте docker-compose.yml

Выберите версию NocoBase (Сравнение версий) и тип базы данных, затем скопируйте соответствующую конфигурацию в docker-compose.yml.

Примечания по настройке
  • Выберите образ: latest latest-full beta beta-full alpha alpha-full 1.7.14 1.7.14-full
    • Для продакшн-сред рекомендуется зафиксировать конкретный номер версии, чтобы избежать непреднамеренных автоматических обновлений. Посмотреть все версии
    • Образ Docker Hub: nocobase/nocobase:latest-full
    • Полный образ включает клиент PostgreSQL 16/17, клиент MySQL 8.0, клиент Oracle 19.25, необходимый для плагинов управления резервным копированием и миграциями, а также LibreOffice, необходимый для печати шаблонов (PDF).
    • Если вам нужно собрать собственный образ, обратитесь к официальным Dockerfile (slim version) и Dockerfile-full (full version)
  • Измените APP_KEY: замените your-secret-key на случайную строку, которая используется для шифрования конфиденциальной информации, например токенов пользователей.
  • Используйте существующую базу данных: если у вас уже есть сервис базы данных, измените DB_HOST на адрес сервера базы данных, а конфигурацию сервиса базы данных (например, сервисы postgres, mysql, mariadb) удалите или закомментируйте.
  • Порт-маппинг: по умолчанию порт 80 контейнера сопоставляется с портом 13000 хоста. При необходимости можно изменить это.
Последняя версия
Бета-версия
Альфа-версия
PostgreSQL
MySQL
MariaDB
networks:
  nocobase:
    driver: bridge

services:
  app:
    image: nocobase/nocobase:latest-full
    restart: always
    networks:
      - nocobase
    depends_on:
      - postgres
    environment:
      # Ключ приложения, используется для генерации токенов пользователей и т.д.
      # Если APP_KEY изменен, старые токены станут недействительными
      # Может быть любой случайной строкой; убедитесь, что она не утечёт
      - APP_KEY=your-secret-key
      # Тип базы данных: поддерживаются postgres, mysql, mariadb
      - DB_DIALECT=postgres
      # Хост базы данных; можно заменить на IP-адрес существующего сервера базы данных
      - DB_HOST=postgres
      # Порт базы данных
      - DB_PORT=5432
      # Имя базы данных
      - DB_DATABASE=nocobase
      # Пользователь базы данных
      - DB_USER=nocobase
      # Пароль базы данных
      - DB_PASSWORD=nocobase
      # Часовой пояс; замените его на ваш локальный, например America/New_York
      - TZ=Etc/UTC

    volumes:
      - ./storage:/app/nocobase/storage
    ports:
      - '13000:80'
    # init: true

  # Если вы используете существующий сервис базы данных, запускать postgres не обязательно
  postgres:
    image: postgres:16
    restart: always
    command: postgres -c wal_level=logical
    environment:
      POSTGRES_USER: nocobase
      POSTGRES_DB: nocobase
      POSTGRES_PASSWORD: nocobase
    volumes:
      - ./storage/db/postgres:/var/lib/postgresql/data
    networks:
      - nocobase

3. Установите и запустите NocoBase

# Скачайте последний образ
docker compose pull

# Запустите в фоне (установка выполнится автоматически при первом запуске)
docker compose up -d

# Просмотр логов установки и запуска
docker compose logs -f app

app-postgres-app-1  | nginx started
app-postgres-app-1  | yarn run v1.22.15
app-postgres-app-1  | $ cross-env DOTENV_CONFIG_PATH=.env node -r dotenv/config packages/app/server/lib/index.js install -s
app-postgres-app-1  | Done in 2.72s.
app-postgres-app-1  | yarn run v1.22.15
app-postgres-app-1  | $ pm2-runtime start --node-args="-r dotenv/config" packages/app/server/lib/index.js -- start
app-postgres-app-1  | 2022-04-28T15:45:38: PM2 log: Launching in no daemon mode
app-postgres-app-1  | 2022-04-28T15:45:38: PM2 log: App [index:0] starting in -fork mode-
app-postgres-app-1  | 2022-04-28T15:45:38: PM2 log: App [index:0] online
app-postgres-app-1  | 🚀 NocoBase server running at: http://localhost:13000/

4. Войдите в NocoBase

Откройте http://localhost:13000 в браузере. Начальная учетная запись и пароль: admin@nocobase.com и admin123.

Уведомление о безопасности учетной записи

После первого входа сразу смените пароль по умолчанию, чтобы обеспечить безопасность системы.