Merge pull request #101 from gled-rs/patch-1

Update INSTALL.md
This commit is contained in:
Baptiste Gelez 2018-06-29 23:02:30 +02:00 committed by GitHub
commit 1a8faddaea
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -1,32 +1,47 @@
# How to install Plume on a Debian stretch: # How to install Plume on a Debian stretch:
## Basic setup: ## Basic setup:
```bash
apt update apt update
apt install gettext postgresql postgresql-contrib libpq-dev apt install gettext postgresql postgresql-contrib libpq-dev
adduser plume adduser plume
su - plume su - plume
cd /home/plume cd /home/plume
git clone https://github.com/Plume-org/Plume.git git clone https://github.com/Plume-org/Plume.git
curl https://sh.rustup.rs -sSf | sh -s -- --no-modify-path --default-toolchain nightly curl https://sh.rustup.rs -sSf | sh
cd Plume cd Plume
rustup toolchain install nightly rustup toolchain install nightly
rustup override set nightly-2018-05-15 # this seems to be needed for compilation rustup toolchain default nightly
rustup update
cargo install diesel_cli --no-default-features --features postgres # we dont need to compile anything else than pgsql cargo install diesel_cli --no-default-features --features postgres # we dont need to compile anything else than pgsql
```
## Now, if you want to run postgresql on the same server: ## Now, if you want to run postgresql on the same server:
```bash
service postgresql start
cargo run # this will configure and launch Plume on the server. cargo run # this will configure and launch Plume on the server.
```
## If you want to run Plume with a remote DB this time ( Postgresql is not installed on the same server/container): ## If you want to run Plume with a remote DB this time ( Postgresql is not installed on the same server/container):
* On the DB server: * On the DB server:
```bash
service postgresql start service postgresql start
su - postgres su - postgres
createuser -d -P plume createuser -d -P plume
createdb -O plume plume createdb -O plume plume
```
* On the Plume server: * On the Plume server:
```bash
cd /home/plume/Plume cd /home/plume/Plume
diesel migration run --database-url postgres://plume:PASSWORD@DBSERVERIP:DBPORT/plume diesel migration run --database-url postgres://plume:PASSWORD@DBSERVERIP:DBPORT/plume
DB_URL=postgres://plume:PASSWORD@DBSERVERIP:DBPORT/plume cargo run # the first launch will ask questions to configure the instance. A second launch will not need the DB_URL. DB_URL=postgres://plume:PASSWORD@DBSERVERIP:DBPORT/plume cargo run # the first launch will ask questions to configure the instance. A second launch will not need the DB_URL.
```
## Plume is now accessible as seen on your console. You can have fun now, or configure an nginx proxy with the following excerpt: ## Plume is now accessible as seen on your console. You can have fun now, or configure an nginx proxy with the following excerpt:
@ -42,4 +57,16 @@ DB_URL=postgres://plume:PASSWORD@DBSERVERIP:DBPORT/plume cargo run # the first l
} }
# Caveats: # Caveats:
* Pgbouncer is not yet supported ( named transactions are used ). * Pgbouncer is not yet supported ( named transactions are used ).
* Rust nightly is a moving target, dependancies can break and sometimes you need to check a few versions to find the one working.
```bash
cd /home/plume/Plume
rustup override set nightly-2018-05-15 # this could be needed for compilation. If errors, try 2018-05-31.
# rustup override unset # remove the override for this directory.
```
* Rust nightly 2018-06-28 is known to be failing to compile diesel 1.3.2