MusicBrainz Server/Setup: Difference between revisions

From MusicBrainz Wiki
Jump to navigationJump to search
(→‎Setup MusicBrainz Server from source code: Update after MusicBrainz Docker became officially recommended)
Line 10: Line 10:
See [https://github.com/metabrainz/musicbrainz-docker MusicBrainz Docker] and its [https://github.com/metabrainz/musicbrainz-docker/releases release notes].
See [https://github.com/metabrainz/musicbrainz-docker MusicBrainz Docker] and its [https://github.com/metabrainz/musicbrainz-docker/releases release notes].


== Setup MusicBrainz Server from source code ==
== Setup from source code ==
This can potentially be a very laborious and time consuming method of getting a functioning MusicBrainz server. Using the virtual machine is recommended, except for development purpose.
This can potentially be a very laborious and time consuming method of getting a functioning MusicBrainz server. Use it only if you cannot use MusicBrainz Docker for some reason (disk space, development, …).


Get a copy of musicbrainz-server from git:
Get a copy of musicbrainz-server from git:
git clone --recursive https://github.com/metabrainz/musicbrainz-server.git musicbrainz-server
git clone --recursive https://github.com/metabrainz/musicbrainz-server.git musicbrainz-server
cd musicbrainz-server
cd musicbrainz-server
Line 28: Line 28:
In order to set up a running MusicBrainz server with the full database you will need:
In order to set up a running MusicBrainz server with the full database you will need:
* A linux box, preferably Ubuntu.
* A linux box, preferably Ubuntu.
* 20GB+ of free disk space, (if you are a developer and only want the server code and database structure somewhat less should do).
* 60GB+ of free disk space, (if you are a developer and only want the server code and database structure 2GB+ should do, count 6GB+ if you want sample data).
* [[Git]] knowledge which will enable you to check out the source code.
* [[Git]] knowledge which will enable you to check out the source code.
* PostgreSQL 9.5 or later (and some [https://github.com/metabrainz/musicbrainz-server/blob/master/INSTALL.md#prerequisites other dependencies])
* PostgreSQL 9.5 or later (and some [https://github.com/metabrainz/musicbrainz-server/blob/master/INSTALL.md#prerequisites other dependencies])


As a developer the following knowledge/skills are beneficial:
As a developer the following knowledge/skills are beneficial:
* Perl and a number of perl modules, PostgreSQL, nginx.
* Perl and a number of perl modules, PostgreSQL, React/JSX.
* How to compile and install packages from source on a Linux box.
* How to compile and install packages from source on a Linux box.
* How to patch existing packages, although we can help you out if you have questions about that.
* How to patch existing packages, although we can help you out if you have questions about that.



Revision as of 15:55, 15 May 2020

Setup from Docker Compose

This method is recommended as it makes install, setup, and maintenance much easier for you, to the cost of a small overhead compared to the size of the database.

It can be used to:

  • Replicate the MusicBrainz website/web service/database,
  • Test your own app that queries MusicBrainz web service,
  • Develop MusicBrainz Server itself.

See MusicBrainz Docker and its release notes.

Setup from source code

This can potentially be a very laborious and time consuming method of getting a functioning MusicBrainz server. Use it only if you cannot use MusicBrainz Docker for some reason (disk space, development, …).

Get a copy of musicbrainz-server from git:

git clone --recursive https://github.com/metabrainz/musicbrainz-server.git musicbrainz-server
cd musicbrainz-server

And follow the instructions in the INSTALL file.

Support

The setup process may look daunting, but please don't let this discourage you; the INSTALL is thorough and contains a lot of information, and we are willing to provide assistance. If you have questions about installing, join us in the #metabrainz IRC channel or post a question on the community forum and we will attempt to help you out.

We recommend that you dive in and give it a try - who knows how far you'll get and what you might learn along the way!

Requirements

In order to set up a running MusicBrainz server with the full database you will need:

  • A linux box, preferably Ubuntu.
  • 60GB+ of free disk space, (if you are a developer and only want the server code and database structure 2GB+ should do, count 6GB+ if you want sample data).
  • Git knowledge which will enable you to check out the source code.
  • PostgreSQL 9.5 or later (and some other dependencies)

As a developer the following knowledge/skills are beneficial:

  • Perl and a number of perl modules, PostgreSQL, React/JSX.
  • How to compile and install packages from source on a Linux box.
  • How to patch existing packages, although we can help you out if you have questions about that.

Note: The server has never been ported to Windows, and we suspect that it would be a fair amount of work to make that happen.

External Links