3 votos

Cómo ejecutar un comando al inicio

Quiero que mi servidor MongoDB se inicie automáticamente al arrancar. El comando para ello es

mongod --dbpath="/Users/prateek/Desktop/Mongo Database"

¿Cómo configuro esto en Mac OSX El Capitan?

Nota - He instalado MongoDB usando Homebrew

4voto

klanomath Puntos 19587

Cree un archivo llamado org.mongod.user.plist en ~/Library/LaunchAgents con el contenido:

<?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.mongod.user</string>
    <key>ProgramArguments</key>
    <array>
        <string>mongod</string>
        <string>--dbpath=/Users/prateek/Desktop/Mongo Database</string>
    </array>
    <key>RunAtLoad</key>
    <true/>
</dict>
</plist>

Esto requiere que mongod está en su camino.

Si mongod no está en su ruta, utilice la ruta completa en la primera cadena de la matriz ProgramArguments (por ejemplo /usr/local/Cellar/mongodb/3.2.1/bin/mongod )

Si necesitas stdout o stderr (que puede ser útil si algo falla) añade lo siguiente en la sección dict del plist:

    <key>StandardErrorPath</key>
    <string>/tmp/org.mongod.user.stderr</string>
    <key>StandardOutPath</key>
    <string>/tmp/org.mongod.user.stdout</string>

Cargar e iniciar mongod con:

launchctl load ~/Library/LaunchAgents/org.mongod.user.plist
launchctl start org.mongod.user

Para conectarte a tu base de datos MongoDB entra:

mongo localhost

De nuevo, esto requiere que mongo está en su ruta. En caso contrario, utilice la ruta completa (por ejemplo /usr/local/Cellar/mongodb/3.2.1/bin/mongo ).

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X