Проект для автоматизации работы диспетчерской службы в части планирования закупок и ведению учета имеющегося инвентаря.
Реализация серверной части проекта. Клиенткая часть находится по адресу https://github.com/multiplayground/ceres-frontend
Проект является учебным.
- Проект базируется на платформе NodeJS
- В качестве фреймворка используется ExpressJS
- База данных
- Сервер MySQL 5.7 / MariaDB 10.0
- ORM
- ObjectionJS
- Для валидации моделей используется validate.js
Для миграций и сидов используется knex.
Алиас для запуска knex - npm run knex
Например, для создания миграции npm run knex migrate:make название_миграции
-
- Для Windows
- Установить сервер базы данных с оффициального сайта MySQL 5.7 / MariaDB 10.0
- Установить Open Server
- Использовать Docker
- Пример файла
docker-compose.yml
- Пример файла
- Для MacOS
- Установить сервер базы данных с оффициального сайта MySQL 5.7 / MariaDB 10.0
- Использовать Mamp
- Использовать Docker
- Пример файла
docker-compose.yml
- Пример файла
- Для Linux
- Сам знаешь что делать 😎
- Для Windows
-
npm install
npm run dev
После это проект будет доступен по адресу http://localhost:8080
Пример файла docker-compose.yml
version: "3"
services:
db:
image: mysql:5.7
container_name: ceres-backend-db-dev
environment:
MYSQL_ROOT_PASSWORD: secret
MYSQL_DATABASE: ceres
MYSQL_USER: ceres
MYSQL_PASSWORD: secret
TZ: Europe/Moscow
ports:
- "3306:3306"
command: [
'mysqld',
'--character-set-server=utf8mb4',
'--collation-server=utf8mb4_general_ci'
]
adminer:
image: adminer:4
container_name: ceres-backend-db-adminer
ports:
- "8088:8080"
depends_on:
- db
В примере используется adminer для удобного управления базой данных.
Adminer будет доступен по адресу http://localhost:8088
Также к базе данных можно подключиться через стороние программы через порт 3306