1
1
mirror of https://github.com/aelve/guide.git synced 2024-11-22 20:01:36 +03:00

Add installation instructions

This commit is contained in:
Artyom 2016-03-09 21:44:59 +03:00
parent c07f0f1911
commit b71cde0770
2 changed files with 68 additions and 0 deletions

66
INSTALL.md Normal file
View File

@ -0,0 +1,66 @@
# How to install locally
$ cabal install --only-dependencies
$ cabal build
$ dist/build/guide/guide
And go to <http://localhost:8080>.
# How to install on a server
I'm going to use Digitalocean and Ubuntu, but you can use anything else.
Create a droplet with Ubuntu. Install GHC:
$ add-apt-repository ppa:hvr/ghc
$ apt-get update
$ apt-get install ghc-7.10.3 cabal-install-1.22
Add cabal-install, GHC, and the cabal dir to `PATH` by adding
/opt/cabal/1.22/bin:/opt/ghc/7.10.3/bin:$HOME/.cabal/bin
to `PATH` in `~/.bashrc` and then doing `source ~/.bashrc`.
Clone and build `guide`:
$ git clone https://github.com/aelve/guide
$ cd guide
$ cabal update
$ cabal install --dependencies-only
$ cabal build
Delete the contents of `static/tracking.html` (because otherwise information about visits will be sent to me):
$ truncate -s 0 static/tracking.html
Make a new subdomain in Apache. For me, it means writing this to `/etc/apache2/sites-available/guide.conf`:
~~~
<VirtualHost *:80>
ServerName guide.aelve.com
ProxyPreserveHost On
ProxyPass / http://0.0.0.0:8080/
ProxyPassReverse / http://0.0.0.0:8080/
</VirtualHost>
~~~
Enable the site:
$ a2ensite guide
$ service apache2 reload
Create a daemon. This goes to `/etc/init/guide.conf` (the path is going to be something other than `/root/guide` for you):
~~~
start on filesystem or runlevel [2345]
stop on runlevel [!2345]
chdir /root/guide
env LC_ALL=en_US.UTF-8
exec dist/build/guide/guide
~~~
And start the daemon:
$ service guide start

View File

@ -2,3 +2,5 @@
[![Build status](https://secure.travis-ci.org/aelve/guide.svg)](https://travis-ci.org/aelve/guide)
[![BSD3 license](https://img.shields.io/badge/license-BSD3-blue.svg)](https://github.com/aelve/guide/blob/master/LICENSE)
Installation instructions are here: [INSTALL.md](INSTALL.md).