Musare can be installed with Docker (recommended) or without, guides for both installations can be found below.
git clone https://github.com/Musare/MusareNode.git
cd MusareNode
cp backend/config/template.json backend/config/default.json
and configure as per Configurationcp frontend/dist/config/template.json frontend/dist/config/default.json
and configure as per Configurationcp .env.example .env
and configure as per Configuration../musare.sh build
./musare.sh start
./musare.sh admin add USERNAME
.Windows Only
Some people have had issues while trying to execute the docker-compose
command.
To fix this, you will have to run docker-machine env default
.
This command will print various variables.
At the bottom, it will say something similar to @FOR /f "tokens=*" %i IN ('docker-machine env default') DO @%i
.
Run this command in your shell. You will have to do this command for every shell you want to run docker-compose
in (every session).
git clone https://github.com/Musare/MusareNode.git
cd MusareNode
cp backend/config/template.json backend/config/default.json
and configure as per Configurationcp frontend/dist/config/template.json frontend/dist/config/default.json
and configure as per Configurationsystemctl start redis mongod
cd frontend && npm run dev
and cd backend && npm run dev
separately.windows-start.cmd
or just double click the windows-start.cmd
file and all servers will automatically start up.startRedis.cmd
and startMongo.cmd
to start Redis and Mongo.cd frontend && npm run dev
and cd backend && npm run dev
separately.bash
use musare
db.auth("MUSAREDBUSER","MUSAREDBPASSWORD")
db.users.update({username: "USERNAME"}, {$set: {role: "admin"}})
### Setting up MongoDB
- Windows Only
1. In the root directory, create a folder called .database
2. Create a file called startMongo.cmd
in the root directory with the contents:
"C:\Program Files\MongoDB\Server\4.0\bin\mongod.exe" --dbpath "C:\Path\To\MusareNode\.database"
Make sure to adjust your paths accordingly.
3. Start the database by executing the script startMongo.cmd
you just made
- Set up the MongoDB database itself
1. Start MongoDB
- Linux Execute systemctl start mongod
- Windows Execute the startMongo.cmd
script you just made
2. Connect to Mongo from a command prompt
mongo admin
3. Create an admin user
db.createUser({user: 'admin', pwd: 'PASSWORD_HERE', roles: [{role: 'userAdminAnyDatabase', db: 'admin'}]})
4. Connect to the Musare database
use musare
5. Create the "musare" user
db.createUser({user: 'musare', pwd: 'OTHER_PASSWORD_HERE', roles: [{role: 'readWrite', db: 'musare'}]})
6. Exit
exit
7. Add the authentication
- Linux
1. Add auth=true
to /etc/mongod.conf
2. Restart MongoDB systemctl restart mongod
- Windows
1. In startMongo.cmd
add --auth
at the end of the first line
2. Restart MongoDB
### Setting up Redis
- Windows
1. In the folder where you installed Redis, edit the redis.windows.conf
file
1. In there, look for the property notify-keyspace-events
.
2. Make sure that property is uncommented and has the value Ex
.
notify-keyspace-events Ex
when done.
2. Create a file called startRedis.cmd
in the main folder with the contents:
"C:\Path\To\Redis\redis-server.exe" "C:\Path\To\Redis\redis.windows.conf" "--requirepass" "PASSWORD"
And again, make sure that the paths lead to the proper config and executable. Replace PASSWORD
with your Redis password.
- Linux
1. In /etc/redis/redis.conf
1. Uncomment notify-keyspace-events
and set its value to Ex
.
2. Uncomment requirepass foobared
and replace foobared with your Redis password.
2. Restart Redis systemctl restart redis