2.3 KiB
2.3 KiB
Partynest
A web application to manage political party members and supporters.
Table of contents
Deploy
Tested with Ubuntu Server 18.04 LTS.
System packages
build-essential
bundler
liblzma-dev
libpq-dev
nodejs
npm
patch
ruby
ruby-dev
rubygems-integration
zlib1g-dev
Steps
- Create directory
/opt/partynest/
writable by deploy user - Copy file
config/master.key
to/opt/partynest/shared/config/
- Create PostgreSQL role
partynest
with passwordpassword
- Create PostgreSQL database
partynest_production
owned bypartynest
Example systemd services
Replace user
with the name of user and group
with the name of group
which you want an application to run as.
Web server
[Unit]
After=syslog.target network.target
Description=Partynest web server
[Service]
ExecStart=/usr/bin/bundle exec rails server --environment production
Group=group
Restart=on-failure
RestartSec=1
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=partynest-web
Type=simple
User=user
WorkingDirectory=/opt/partynest/current
[Install]
WantedBy=multi-user.target
Job processing
[Unit]
After=syslog.target network.target
Description=Partynest job processing
[Service]
ExecStart=/usr/bin/bundle exec sidekiq --environment production
Group=group
Restart=on-failure
RestartSec=1
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=partynest-worker
Type=simple
User=user
WorkingDirectory=/opt/partynest/current
[Install]
WantedBy=multi-user.target