Troubleshooting
Cannot start Logstash
It is common for Mac users to receive the following error that Logstash cannot start due to the address already being in use:
ERROR: for graphgrid-ai-20_logstash_1 Cannot start service logstash: Ports are not available: listen tcp 0.0.0.0:5000: bind: address already in use
The macOS' Airplay Receiver uses port 5000 by default, to fix this issue make sure that Airplay Receiver is turned off. Go to System Preferences > Sharing > and uncheck AirPlay Receiver.
macOS Default File Limits
This is an example of an error received when attempting to start services:
ERROR: for search Cannot start service search: Ports are not available: listen tcp 0.0.0.0:5305: socket: too many open files
The error is caused by the default file limits on macOS. This script will increase the open file limits:
#!/bin/sh
curl -O https://cdn.graphgrid.com/security/limit.maxfiles.plist
curl -O https://cdn.graphgrid.com/security/limit.maxproc.plist
sudo mv limit.maxfiles.plist /Library/LaunchDaemons
sudo mv limit.maxproc.plist /Library/LaunchDaemons
sudo chown root:wheel /Library/LaunchDaemons/limit.maxfiles.plist
sudo chown root:wheel /Library/LaunchDaemons/limit.maxproc.plist
sudo launchctl load -w /Library/LaunchDaemons/limit.maxfiles.plist
sudo launchctl load -w /Library/LaunchDaemons/limit.maxproc.plist
Restart your machine after running this script. Running ulimit -n
should return 524288
.
Make Sure Docker is Running
After running ./bin/graphgrid install
or ./bin/graphgrid start
you may get these messages:
If Docker is not installed:
Docker must be installed and the 'docker' command accessible to continue.
If Docker Compose is not installed:
Docker Compose must be installed and the 'docker-compose' command accessible to continue.
If Docker is not running:
Docker must be running to continue.
If GraphGrid install needs run:
GraphGrid install needs run. Run './bin/graphgrid install' before proceeding.
Make Sure Containers Are Stopped
When starting up services you may encounter an error like this:
ERROR: for rabbitmq Cannot start service rabbitmq: driver failed programming external connectivity on endpoint graphgrid-enterprise-140_rabbitmq_1 (d716f217049ec5a0ae1907f9a414c6f1202ceb95281285eed96ff8bc92d4fe3a): Bind for 0.0.0.0:15672 failed: port is already allocated
This error means that there are already docker containers running. Do a check to see which containers are running with docker ps
. The ideal way of shutting
everything down should be ./bin/graphgrid stop
, however there may be other containers running that conflict with the services.
To fix this, run:
docker container stop $(docker container ls -aq)
After that has finished, confirm everything is shutdown by running docker ps
. You will need to manually stop any containers that are still running by executing
docker stop <containerID>
. Again, check to make sure everything is stopped with docker ps
. If you still see running containers then restart your Docker
program. After shutting down everything and confirming that it properly shutdown, try starting up the package again.
Proper installation
If multiple Docker containers exit and log about permissions issues, ensure you remembered to run the installation script.