Fork me on GitHub

Herr Knedel/Great things with containers: Own WallaBag on Synology disk station

Created Sun, 18 Apr 2021 00:00:00 +0000 Modified Mon, 28 Mar 2022 18:09:02 +0000 Difficulty level: Can be done by anyone

539 Words

Wallabag is a program for archiving interesting web pages or articles. Today I will show how to install a Wallabag service on the Synology disk station.

Option for professionals

Of course, as an experienced Synology user, you can log in right away with SSH and install the whole setup via Docker Compose file.

version: '3'
services:
  wallabag:
    image: wallabag/wallabag
    environment:
      - MYSQL_ROOT_PASSWORD=wallaroot
      - SYMFONY__ENV__DATABASE_DRIVER=pdo_mysql
      - SYMFONY__ENV__DATABASE_HOST=db
      - SYMFONY__ENV__DATABASE_PORT=3306
      - SYMFONY__ENV__DATABASE_NAME=wallabag
      - SYMFONY__ENV__DATABASE_USER=wallabag
      - SYMFONY__ENV__DATABASE_PASSWORD=wallapass
      - SYMFONY__ENV__DATABASE_CHARSET=utf8mb4
      - SYMFONY__ENV__DOMAIN_NAME=http://192.168.178.50:8089
      - SYMFONY__ENV__SERVER_NAME="Your wallabag instance"
      - SYMFONY__ENV__FOSUSER_CONFIRMATION=false
      - SYMFONY__ENV__TWOFACTOR_AUTH=false
    ports:
      - "8089:80"
    volumes:
      - ./wallabag/images:/var/www/wallabag/web/assets/images

  db:
    image: mariadb
    environment:
      - MYSQL_ROOT_PASSWORD=wallaroot
    volumes:
      - ./mariadb:/var/lib/mysql

More useful Docker images for home use can be found in the Dockerverse.

Step 1: prepare wallabag folder

I create a new directory called “wallabag” in the Docker directory.

Step 2: Install database

After that, a database needs to be created. I click on the “Registration” tab in the Synology Docker window and search for “mariadb”. I select the Docker image “mariadb” and then click on the tag “latest”.

After the image download, the image is available as an image. Docker distinguishes between 2 states, container “dynamic state” and image (fixed state). Before we now create a container from the image, a few settings must be made.I double-click on my mariadb image. After that I click on “Advanced settings” and activate the “Automatic restart”. I select the “Volume” tab and click on “Add Folder”. There I create a new database folder with this mount path “/var/lib/mysql”. Under “Port Settings” all ports are deleted. This means that I select the “3306” port and delete it with the “-” button.
Variable name Value What is it?
TZ Europe/Berlin Time zone
MYSQL_ROOT_PASSWORD wallaroot Master password of the database.
Finally, I enter these environment variables:See: After these settings Mariadb server can be started! I press “Apply” everywhere.

Step 3: Install Wallabag

I click on the “Registration” tab in the Synology Docker window and search for “wallabag”. I select the Docker image “wallabag/wallabag” and then click on the tag “latest”.

I double click on my wallabag image. After that I click on “Advanced settings” and activate the “Automatic restart” here as well. I select the “Volume” tab and click on “Add Folder”. There I create a new folder with this mount path “/var/www/wallabag/web/assets/images”. I assign fixed ports for the “wallabag” container. Without fixed ports it could be that the “wallabag server” runs on another port after a restart. The first container port can be deleted. The other port should be remembered. Also, a “link” to the “mariadb” container still needs to be created. I click on the “Links” tab and select the database container. The alias name should be well remembered for the wallabag installation.
Umgebungsvariable Value
MYSQL_ROOT_PASSWORD wallaroot
SYMFONY__ENV__DATABASE_DRIVER pdo_mysql
SYMFONY__ENV__DATABASE_HOST db
SYMFONY__ENV__DATABASE_PORT 3306
SYMFONY__ENV__DATABASE_NAME wallabag
SYMFONY__ENV__DATABASE_USER wallabag
SYMFONY__ENV__DATABASE_PASSWORD wallapass
SYMFONY__ENV__DATABASE_CHARSET utf8mb4
SYMFONY__ENV__DOMAIN_NAME “http://synology-ip:container-port” <- Please change
SYMFONY__ENV__SERVER_NAME “Wallabag - Server”
SYMFONY__ENV__FOSUSER_CONFIRMATION false
SYMFONY__ENV__TWOFACTOR_AUTH false
Finally, I enter these environment variables:See: The container can now be started. It may take some time to create the database. The behavior can be observed via the container details. I call the wallabag server with the Synology IP address and my container port. But I must say that I personally prefer shiori as an Internet archive.