MEN-template
Это готовый к работе докеризированный шаблон GraphQL API для повышения скорости разработки новых проектов. Надеюсь, он поможет и Вам.
Ready to use dockerized dev-environment for new project development speed up.
Tech stack
- TS
- Mongo (mongoose)
- Express
- Node
- GraphQL (apollo-server)
How to install
Клонируйте данный репозиторий в директорию проекта.
Clone this repo.
How to use
Предусмотрено два варианта запуска: через Makefile и через docker.
There are two ways of using this environment: through Makefile and through docker itself.
Makefile
Сборка и запуск контейнеров в режиме разработки
Build and run containers in dev modemake up-build
Запуск контейнеров в режиме разработки
Run containers in dev modemake up
Запуск контейнеров в рабочем режиме
Run containers in prod modemake up-prod
Остановка контейнеров
Stop containersmake down
Docker-compose
Сборка и запуск контейнеров в режиме разработки
Build and run containers in dev modedocker-compose up --build -d
Запуск контейнеров в режиме разработки
Run containers in dev modedocker-compose up -d
Запуск контейнеров в рабочем режиме
Run containers in prod modedocker-compose -f docker-compose.yml -f docker-compose.prod.yml
Остановка контейнеров
Stop containersdocker-compose down
Structure of .env
MONGODB_USER=root
MONGODB_PASSWORD=123456
MONGODB_DATABASE=project_db
MONGODB_DOCKER_OUTSIDE_PORT=7017
MONGODB_DOCKER_INSIDE_PORT=27017
NODE_LOCAL_PORT=4200
NODE_DOCKER_PORT=4000
If you are a SELinux user
Если на Вашей системе используется SELinux добавьте новые правила для монтируемых директорий хост-машины, во избежание возникновения проблем с доступом к файлам из контейнера.
Add a SELinux rule for your binded host dirs, otherwise you’ll get permission issues inside the container and it wouldn’t work
$ chcon -Rt svirt_sandbox_file_t "$PWD"/src/
$ chcon -Rt svirt_sandbox_file_t "$PWD"/nodemon.json
$ chcon -Rt svirt_sandbox_file_t "$PWD"/init-mongo.sh
Описание
Готовый к применению шаблон для GraphQL API на Mongo-Express-Node