sudo apt-get install npm
sudo apt-get install python3
sudo apt-get install python3-pip
# ensure backwards-compatibility with nodejs
sudo ln -s /usr/bin/nodejs /usr/bin/node
sudo npm -g install grunt
sudo npm -g install bower
# clone repo
# git@github.com:joshgeller/travelcal.git
# https://github.com/joshgeller/travelcal.git
# cd into root dir of repo
cp config.json.example config.json
# update config with your server settings
sudo pip3 install -r server/requirements.txt
npm install
bower update
grunt
- Icons can be references from here
Base Ubuntu 14.04 installation (or other installation compatible with below packages)
- Base Server Installation
- OpenSSH server
- Setup database with postgres
- Install postgres-9.4 on your machine
- Create a new user called
travelcal
with passwordtrav3lc4l
, and a new database calledtravelcal
- Using the following guide as a reference
sudo add-apt-repository "deb https://apt.postgresql.org/pub/repos/apt/ trusty-pgdg main"
wget --quiet -O - https://postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
sudo apt-get update
sudo apt-get install postgresql-9.4
sudo apt-get install python3-pip python3-dev libpq-dev postgresql-contrib
pip3 install django psycopg2
sudo su - postgres
psql
CREATE DATABASE myproject;
CREATE USER myprojectuser WITH PASSWORD 'password';
ALTER ROLE myprojectuser SET client_encoding TO 'utf8';
ALTER ROLE myprojectuser SET default_transaction_isolation TO 'read committed';
ALTER ROLE myprojectuser SET timezone TO 'UTC';
GRANT ALL PRIVILEGES ON DATABASE myproject TO myprojectuser;
\q
exit
--
Install wkhtmltopdf
binary, or build from source.
http://wkhtmltopdf.org/downloads.html
To avoid storing plaintext username/password in the public repo, Sendgrid reads
this information from OS environment variables. Make sure to set the
SENDGRID_USERNAME
and SENDGRID_PASSWORD
environment variables on the
target OS.
For Linux/OSX, use export SENDGRID_USERNAME=<username>
See Josh for the credentials.
Configure crontab to run this command in order to send email reminders each day at midnight:
* 0 * * * python3 manage.py send_email_reminders >/dev/null 2>&1