Нужна помощь с помощью команды Homebrew 'Services'

9

Я недавно установил MongoDB, используя homebrew. Несколько статей в Интернете советуют запустить Монго, используя следующую команду:

brew services start mongo

Но когда я использую эту команду, я получаю следующее сообщение:

Error: Unknown command: services

Я пытался найти эту проблему в Интернете. Но пока не повезло. В чем может быть проблема здесь? Я установил доморощенный, как это было указано на их сайте. Почему эта функция не работает для меня?

А на странице руководства нет информации о команде «services».

Ganz7
источник

Ответы:

8

services была «скрытой» командой в Homebrew. Их было несколько, которых не было вbrew helpвыводе. Он, как обычно делают недокументированные команды, исчез в официальном репозитории и стал « внешней командой », поддерживаемой в другом репозитории надстроек (в данном случае суть настолько проста).

Вы можете установить его в настройке Homebrew, запустив:

> curl -o /usr/local/bin/brew-services.rb https://gist.githubusercontent.com/lwe/766293/raw/75a7907004bbff0eb3b072d1d951be2cfe7e5020/brew-services.rb
> chmod +x /usr/local/bin/brew-services.rb
> brew services help
usage: [sudo] brew services [--help] <command> [<formula>]

Small wrapper around `launchctl` for supported formulas, commands available:
   cleanup Get rid of stale services and unused plists
   list    List all services managed by `brew services`
   restart Gracefully restart selected service
   start   Start selected service
   stop    Stop selected service

Options, sudo and paths:

  sudo   When run as root, operates on /Library/LaunchDaemons (run at boot!)
  Run at boot:  /Library/LaunchDaemons
  Run at login: /Users/ian/Library/LaunchAgents

В качестве альтернативы вы можете пропустить servicesи просто создать для него файл plist. Например, создать ~/Library/LaunchAgents/org.mongodb.mongod.plistс:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
  <key>Label</key>
  <string>org.mongodb.mongod</string>
  <key>ProgramArguments</key>
  <array>
    <string>/usr/local/Cellar/mongodb/2.6.4/bin/mongod</string>
    <string>run</string>
    <string>--config</string>
    <string>/usr/local/Cellar/mongodb/2.6.4/mongod.conf</string>
  </array>
  <key>RunAtLoad</key>
  <true/>
  <key>KeepAlive</key>
  <false/>
  <key>UserName</key>
  <string>{your_username}</string>
  <key>WorkingDirectory</key>
  <string>/usr/local</string>
  <key>StandardErrorPath</key>
  <string>/usr/local/var/log/mongodb/output.log</string>
  <key>StandardOutPath</key>
  <string>/usr/local/var/log/mongodb/output.log</string>
</dict>
</plist>

Просто измените {your_username}свое действительное имя пользователя и запустите:

launchctl load ~/Library/LaunchAgents/org.mongodb.mongod.plist 

зарегистрировать лист с запуском. Теперь вы можете запускать и останавливать MongoDB с помощью:

launchctl start org.mongodb.mongod
launchctl stop org.mongodb.mongod

Обратите внимание, что вышеприведенное решение по списку было взято из этого превосходного ответа переполнения стека .

Ян С.
источник
2

Теперь это внешнее:

brew tap homebrew/services

brew services install, В brew services installнастоящее время работают.

kbrock
источник
0

Theres - полезный графический интерфейс на веб-сайте MongoDB, если вы не хотите вручную изменять файлы.

http://blog.mongodb.org/post/28925264384/macosx-preferences-pane-for-mongodb

Панель настроек MacOSX для MongoDB предназначена для предоставления простого и эффективного пользовательского интерфейса для управления состоянием локального сервера MongoDB, как и панель настроек MySQL.

ninjaPixel
источник