summaryrefslogtreecommitdiffstats
path: root/rust/INSTALL.md
blob: c2b86c51c1955d50001cd10277c18051f50a1dcb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36

Canonical IA production/QA ansible scripts are in the journal-infra repo. These
directions are likely to end up out-of-date.

## Simple Deployment

To install manually, on a bare server, as root:

    adduser fatcat
    apt install postgresql-9.6 postgresql-contrib postgresql-client-9.6 \
        nginx build-essential git pkg-config libssl-dev libpq-dev \
        htop screen
    mkdir -p /srv/fatcat
    chown fatcat:fatcat /srv/fatcat

    # setup new postgres user
    su - postgres
    createuser -P -s fatcat     # strong random password
    # DELETE: createdb fatcat

    # as fatcat user
    su - fatcat
    ssh-keygen
    curl https://sh.rustup.rs -sSf | sh
    source $HOME/.cargo/env
    cargo install diesel_cli --no-default-features --features "postgres"
    cd /srv/fatcat
    git clone git@git.archive.org:webgroup/fatcat
    cd rust
    cargo build
    echo "DATABASE_URL=postgres://fatcat@localhost/fatcat" > .env
    diesel database reset

    # as fatcat, in a screen or something
    cd /srv/fatcat/fatcat/rust
    cargo run