MusicBrainz Server/Setup: Difference between revisions
m (10 revision(s)) |
m (→Requirements: Remove the required version of PostgreSQL, which was outdated and would like become outdated again, mention some other key software requirements) |
||
(112 intermediate revisions by 22 users not shown) | |||
Line 1: | Line 1: | ||
== Setup from Docker Compose == |
|||
<small>[[Products]] > [[Server]] > [[Server Development|Server development]] > Server setup </small> |
|||
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: |
|||
==Introduction== |
|||
* Replicate the MusicBrainz website/web service/database, |
|||
* Test your own app that queries MusicBrainz web service, |
|||
⚫ | |||
See [https://github.com/metabrainz/musicbrainz-docker MusicBrainz Docker] and its [https://github.com/metabrainz/musicbrainz-docker/releases release notes]. |
|||
Thank you for considering helping out with [[Server|MusicBrainz server]] development! The first thing you will need is to set up a running '''mb_server''' on your own machine. You will need to following things for this: |
|||
* A linux box: A PIII-700 or better, with 256MB RAM and 2Gb of free disk space |
|||
* Knowledge of Apache, Perl, mod_perl, [[PostgreSQL]] and a number of perl modules |
|||
⚫ | |||
⚫ | |||
⚫ | |||
** '''A less painful option''' is to install VMWare (or the VMWare player) and run a copy of the [[Virtual MusicBrainz Server|VirtualMusicBrainzServer]]. |
|||
⚫ | |||
** You '''do not actually need to know SQL/Perl to setup the server'''. But if you plan on adding features to [[MusicBrainz]], you will need Perl, and probably also SQL experience. |
|||
== Setup from source code == |
|||
==Installation instructions== |
|||
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: |
|||
If you meet the above requirements you should read the [http://bugs.musicbrainz.org/browser/mb_server/trunk/INSTALL complete installation instuctions]. Even if you are not familiar with all the requirements above, but are serious about '''mb_server''' development, join us in the [[Contact Us|IRC channel]] or post questions to the [[Developers Mailing List|DevelopersMailingList]], and we will attempt to help out if you get stuck. There is more information on how to install the server and load the correct dataset listed in [[Server Installation FAQ|ServerInstallationFAQ]] - make sure to read this page before asking questions. |
|||
git clone --recursive https://github.com/metabrainz/musicbrainz-server.git musicbrainz-server |
|||
cd musicbrainz-server |
|||
And follow the instructions in the [https://github.com/metabrainz/musicbrainz-server/blob/master/INSTALL.md INSTALL] file. |
|||
=== Support === |
|||
==Which flavour of Linux should I use for mb_server?== |
|||
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 [http://webchat.freenode.net/?channels=metabrainz #metabrainz IRC channel] or post a question on the [https://community.metabrainz.org/tags/musicbrainz-server community forum] and we will attempt to help you out. |
|||
We use [[WikiPedia:Ubuntu|Ubuntu]] as our Linux flavour of choice, however it is possible to setup the mb_server on other distributions as well. |
|||
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! |
|||
Instructions for other distributions (may be sparse): |
|||
* [[Gentoo Server Setup|GentooServerSetup]] |
|||
===Requirements=== |
|||
If you just want a running database, there is a guideline in [[Database Setup|DatabaseSetup]] which helps setting up just the database. |
|||
In order to set up a running MusicBrainz server with the full database you will need: |
|||
==Don't be discouraged by the steep learning curve== |
|||
* 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). |
|||
⚫ | |||
* PostgreSQL, Perl, Node.js, and some other dependencies (See [https://github.com/metabrainz/musicbrainz-server/blob/master/INSTALL.md#prerequisites all software prerequisites]) |
|||
As a developer the following knowledge/skills are beneficial: |
|||
We realize that this is a stiff set of requirements to get started, but please don't let this discourage you. The INSTALL file is thorough and contains a lot of information, and thus also looks daunting. 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. Once you get the [[MusicBrainz]] server running, dive in and tackle a task on the [[Development To Do List|DevelopmentToDoList]] or send us mail via the [[Help Wanted|HelpWanted]] page. |
|||
* Perl and a number of perl modules, PostgreSQL, React/JSX. |
|||
⚫ | |||
⚫ | |||
⚫ | |||
==Related HowTo's== |
|||
==External Links== |
|||
* [[Lucene Server Setup|LuceneServerSetup]] |
|||
* [https://github.com/metabrainz/musicbrainz-server MusicBrainz Server] on GitHub |
|||
<ul><li style="list-style-type:none">If you want to setup your own search server ([[Lucene Server|LuceneServer]]) instead of querying the one of MusicBrainz (search.musicbrainz.org). |
|||
** List of [https://blog.metabrainz.org/category/musicbrainz+server/?tag=changelog MusicBrainz Server updates] on the MetaBrainz blog |
|||
</ul> |
|||
** List of supplemental [http://blog.musicbrainz.org/category/musicbrainz+server/?tag=instructions instructions] on the MetaBrainz blog |
|||
* [https://github.com/metabrainz/musicbrainz-server MusicBrainz Docker] on GitHub |
|||
⚫ | |||
** List of [https://blog.metabrainz.org/category/musicbrainz+virtual-machine/ MusicBrainzB Virtual Machine releases] on the MetaBrainz blog |
|||
** List of [https://github.com/metabrainz/musicbrainz-server/releases MusicBrainz Docker releases] on GitHub |
|||
⚫ |
Latest revision as of 19:58, 28 March 2023
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, Perl, Node.js, and some other dependencies (See all software prerequisites)
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
- MusicBrainz Server on GitHub
- List of MusicBrainz Server updates on the MetaBrainz blog
- List of supplemental instructions on the MetaBrainz blog
- MusicBrainz Docker on GitHub
- List of MusicBrainzB Virtual Machine releases on the MetaBrainz blog
- List of MusicBrainz Docker releases on GitHub