PostgreSQL 9.6 should be available on debian stable (Jessie) from "main" area. Install it using apt: apt install postgresql-9.6
. Make sure that postgresql-9.5
or older is not installed, for some strange reason debian allows multiple versions to coexist, what effect it has - i don't know.
You must install elixir 1.4+ from elixir-lang.org, because Debian repos only have 1.3.x version. You will need to add apt repo to sources.list(.d) and import GPG key. Follow instructions here: https://elixir-lang.org/install.html#unix-and-unix-like (See "Ubuntu or Debian 7"). This should be valid until Debian updates elixir in their repositories. Package you want is named elixir
, so install it using apt install elixir
NodeJS is available as nodejs
package on debian. apt install nodejs
. Debian stable has 4.8.x version. If that does not work, use nodesource's repo https://github.com/nodesource/distributions#deb - version 5.x confirmed to work.
adduser pleroma
mix deps.get
if it asks you to install "hex" - agree to that.You'll need to allow password-based authorisation for postgres
superuser
changing default password for superuser is probably a good idea:
su postgres -c psql
ALTER USER postgres with encrypted password '<YOUR SECURE PASSWORD>';
config/dev.exs
with password you supplied in previous step (look for line like password: "postgres"
)edit /etc/postgresql/9.6/main/pg_hba.conf
(Assuming you have 9.6 version) and change the line:
local all postgres peer
to
local all postgres md5
mix ecto.create && mix ecto.migrate
. If it gives errors, try running again, it should be ok./etc/postgresql/9.6/main/pg_hba.conf
to previous state (replace md5
with peer
)su postgres -c psql
sql
\c pleroma_dev
CREATE user pleroma;
ALTER user pleroma with encrypted password '<your password>';
GRANT ALL ON ALL tables IN SCHEMA public TO pleroma;
GRANT ALL ON ALL sequences IN SCHEMA public TO pleroma;
config/dev.exs
, and change user too to "pleroma"
(like like username: "postgres"
)You will need to let pleroma instance to know what hostname/url it's running on.
In file config/dev.exs
, add these lines at the end of the file:
elixir
config :pleroma, Pleroma.Web.Endpoint,
url: [host: "example.tld", scheme: "https", port: 443]
replacing example.tld
with your (sub)domain
Start Phoenix endpoint with mix phx.server
Now you can visit localhost:4000
from your browser.
Ready to run in production? Please check our deployment guides.