No description
Find a file
Glenn 39720a5727
All checks were successful
continuous-integration/drone/push Build is passing
fix: hide sensitive information
2024-07-09 14:27:31 +02:00
.dockerignore feat: implement base features 2024-07-06 18:26:48 +02:00
.drone.yml ci: enable buildkit 2024-07-08 22:35:07 +02:00
docker-compose.yml fix: parse env variables 2024-07-08 22:29:41 +02:00
Dockerfile fix: parse env variables 2024-07-08 22:29:41 +02:00
entrypoint-wrapper.sh fix: hide sensitive information 2024-07-09 14:27:31 +02:00
parse-database-url.sh fix: parse env variables 2024-07-08 22:29:41 +02:00
README.md doc: add missing config 2024-07-09 14:27:16 +02:00

Build Status

Wallabag

Setup on Dokku

Create app

export APP=wallabag
dokku apps:create $APP

Setup network and domains

Setup storage

mkdir -p /home/data/$APP.wallabag/images
dokku storage:mount $APP /home/data/$APP.wallabag/images:/var/www/wallabag/web/assets/images

Setup database

dokku postgres:create $APP
dokku postgres:link $APP $APP

Setup cache

dokku redis:create $APP
dokku redis:link $APP $APP

Setup configuration

dokku config:set --no-restart $APP SYMFONY__ENV__DATABASE_DRIVER=pdo_pgsql
dokku config:set --no-restart $APP DATABASE_URL=postgresql://wallabag:wallapass@db:5432/wallabag
dokku config:set --no-restart $APP SYMFONY__ENV__DATABASE_TABLE_PREFIX="wallabag_"
dokku config:set --no-restart $APP SYMFONY__ENV__MAILER_DSN=smtp://127.0.0.1
dokku config:set --no-restart $APP SYMFONY__ENV__FROM_EMAIL=$APP@example.com
dokku config:set --no-restart $APP SYMFONY__ENV__DOMAIN_NAME=https://your-$APP-instance.$APP.org
dokku config:set --no-restart $APP SYMFONY__ENV__SERVER_NAME="Your $APP instance"
dokku config:set --no-restart $APP SYMFONY__ENV__SERVER_NAME="Your $APP instance"
dokku config:set --no-restart $APP SYMFONY__ENV__FOSUSER_REGISTRATION=false
dokku config:set --no-restart $APP SYMFONY__ENV__FOSUSER_CONFIRMATION=false

Setup domain and TLS with letsencrypt

dokku domains:add bag bag.danaos.apps.glenux.net
dokku letsencrypt:set $APP email $APP@example.com
dokku letsencrypt:enable $APP

Limit resources

dokku resource:limit --memory 1000m bag
dokku resource:limit --cpu 1 bag

Deploy

git remote add dokku dokku@example.com:$APP
git push

Post-install

docker exec -it $APP.web.1 su -c "/usr/local/bin/entrypoint-wrapper.sh migrate"
docker exec -it $APP.web.1 su -c "bin/console list --env=prod" -s /bin/sh nobody

docker exec -it $APP.web.1 su -c "bin/console fos:user:create --super-admin --env=prod" -s /bin/sh nobody
docker exec -it $APP.web.1 su -c "bin/console fos:user:promote --super --env=prod" -s /bin/sh nobody

Setup on host

Add cronjobs

FROM wallabag/wallabag

The end and, hopefully, success.

Reference