Deployment – inställningar etc. - litheblas/blasfisk GitHub Wiki

Installation

Nödvändiga paket

apt-get install git python-pip python-virtualenv nginx supervisor libpq-dev python-dev postgresql postgresql-contrib libjpeg-dev

Virtuell miljö och kataloger

sudo virtualenv /opt/venvs/blasfisk/

För att inte behöva köra pip med sudo: (väldigt viktigt faktiskt)
sudo chown -R root:sudo /opt/venvs/blasfisk/
sudo chmod -R g+w /opt/venvs/blasfisk/

sudo mkdir -p /opt/venvs/blasfisk/log/supervisor sudo mkdir -p /opt/venvs/blasfisk/log/gunicorn
sudo mkdir -p /opt/venvs/blasfisk/tmp
sudo chmod -R ga+w /opt/venvs/blasfisk/tmp
sudo mkdir -p /var/www/blasfisk/static
sudo mkdir -p /var/www/blasfisk/media

För att kunna köra manage.py collectstatic utan sudo:
sudo chown -R root:sudo /var/www/blasfisk/
sudo chmod -R g+w /var/www/blasfisk/

Aktivera miljön

source /opt/venvs/blasfisk/bin/activate

git

cd /opt
sudo git clone [email protected]:LiTHeBlas/blasfisk.git

exim4 (mailserver)

sudo dpkg-reconfigure exim4-config
Välj 'internet'-läge. I övrigt verkar standardinställningarna fungera.

PostgreSQL

sudo su – postgres
createdb blasfisk
createuser –P
Namn: blasfisk
Lösenord: för hemligt för github
Frågor: n, n, n

psql
GRANT ALL PRIVILEGES ON DATABASE blasfisk TO blasfisk;
Tryck Ctrl+D för att komma ut ur SQL-skalet.
exit för att komma tillbaka till ditt eget skal

Blåsfisk

cd /opt/blasfisk/blasfisk/settings/
sudo cp local.py_ local.py
sudo nano local.py
Ange databaslösenord och SECRET_KEY. De här inställningarna finns inte på GitHub av uppenbara anledningar.

Aktivera virtuella miljön. Se ovan.

cd /opt/blasfisk/ pip install -Ur requirements.txt pip install -Ur requirements-production.txt ./manage.py collectstatic

Supervisor och gunicorn

sudo ln -s /opt/blasfisk/conf/supervisor.conf /etc/supervisor/conf.d/gunicorn-blasfisk.conf
sudo touch /opt/venvs/blasfisk/log/gunicorn/blasfisk.log
sudo supervisorctl start gunicorn-blasfisk

nginx

sudo ln -s /opt/blasfisk/conf/nginx /etc/nginx/sites-available/litheblas.org
sudo ln -s /etc/nginx/sites-available/litheblas.org /etc/nginx/sites-enabled/litheblas.org

Underhåll

Uppdatera (eller installera) från GitHub

cd /opt/blasfisk

git pull

source /opt/venvs/blasfisk/bin/activate

pip install -Ur requirements.txt

./manage.py collectstatic

sudo supervisorctl restart gunicorn-blasfisk