Можно ли запустить MongoDB из задачи Grunt? В основном, когда я запускаю среду разработки с помощью grunt server
, я хочу, чтобы он запустил сервер MongoDB, а возможно, выполнив mongod
.
Запуск MongoDB из задачи Grunt
Ответ 1
Вы можете использовать grunt-shell для запуска команды:
grunt.initConfig({
shell: {
mongo: {
command: 'mongod'
}
}
});
Ответ 2
Вы можете использовать grunt-shell-spawn для этого. Предыдущий ответ рекомендует grunt-shell, который работает синхронно в основном процессе - блокирование выполнения других задач.
shell: {
mongo: {
command: 'mongod',
options: {
async: true
}
}
}
Ответ 3
Чтобы добавить ответ JJJ, используя grunt-shell-spawn, если вы хотите убедиться, что у каждого проекта есть собственный экземпляр mongodb с его собственными данными, вы должны сделать это:
shell: {
mongodb: {
command: 'mongod --dbpath ./data/db',
options: {
async: true,
stdout: false,
stderr: true,
failOnError: true,
execOptions: {
cwd: '.'
}
}
}
},
В этом примере также выводятся только ошибки.
Затем вы просто добавили shell:mongodb
в список задач grunt server
(предпочтительно первую задачу), добавьте data
в ваш .gitignore
(при условии, что вы используете git), и вы хороши для перейти.