-
JocelynDelalande authored
Which will fail if the system does not contains this locale.
JocelynDelalande authoredWhich will fail if the system does not contains this locale.
External dependencies
Note
Those dependencies are handled automatically if you are :doc:`deploying using docker <./docker>`
Database setup (PostgreSQL)
Funkwhale requires a PostgreSQL database to work properly. Please refer to the PostgreSQL documentation for installation instructions specific to your os.
On debian-like systems, you would install the database server like this:
sudo apt-get install postgresql postgresql-contrib
The remaining steps are heavily inspired from this Digital Ocean guide.
Open a database shell:
sudo -u postgres psql
Create the project database and user:
CREATE DATABASE "funkwhale"
WITH ENCODING 'utf8';
CREATE USER funkwhale;
GRANT ALL PRIVILEGES ON DATABASE funkwhale TO funkwhale;
Assuming you already have :ref:`created your funkwhale user <create-funkwhale-user>`, you should now be able to open a postgresql shell:
Warning
It's importing that you use utf-8 encoding for your database, otherwise you'll end up with errors and crashes later on when dealing with music metedata that contains non-ascii chars.
sudo -u funkwhale -H psql
Unless you give a superuser access to the database user, you should also enable some extensions on your database server, as those are required for funkwhale to work properly:
sudo -u postgres psql -c 'CREATE EXTENSION "unaccent";'
Cache setup (Redis)
Funkwhale also requires a cache server:
- To make the whole system faster, by caching network requests or database queries
- To handle asynchronous tasks such as music import
On debian-like distributions, a redis package is available, and you can install it:
sudo apt-get install redis-server
This should be enough to have your redis server set up.