Wallabag is a “read it later” program for saving websites. An appealing thing about Wallabag is that you can host the “bag” of saved websites yourself. To try it out I am using a Docker container on a Raspberry Pi 3.
Wallabag has a prebuilt Docker image, but that is not for the architecture of the Raspberry Pi 3. Fortunately, Wallabag also share the Dockerfile used to make the image on GitHub. Only a few steps are necesarry to build the image yourself.
The Wallabag image use the “official” Docker Linux distribution Alpine Linux Download the Alpine image for the Raspberry Pi:
docker pull arm64v8/alpine
Clone the repository with the Wallabag Dockerfile:
git clone https://github.com/wallabag/docker.git
Dockerfile
in the repository and change the first line from FROM alpine:edge
to FROM arm64v8/alpine
.
Build the Docker image by executing this command in the cloned repository:
docker build -t wallabag .
Finally, create a container for this custom Wallabag image. I want to access Wallabag on port 8766 on the host and use storage on the host as well.
docker create --name wb \
-v /home/robert/docker/wallabag/data:/var/www/wallabag/data \
-v /home/robert/docker/wallabag/images:/var/www/wallabag/web/assets/images \
-p 8766:80 wallabag
Here I am using the default SQLite backend. Other containers can be used as well – good instructions are available on the README in the Wallabag repository.
The container can be started by running docker start wb
.
An alternative to the long create
command is to use Docker Compose with the following docker-compose.yml
file in the same folder as the Dockerfile
:
version: '3'
services:
wallabag:
build: .
image: wallabag
container_name: wb
ports:
- "8766:80"
volumes:
- /home/robert/docker/wallabag/data:/var/www/wallabag/data
- /home/robert/docker/wallabag/images:/var/www/wallabag/web/assets/images
docker-compose up -d
.
>> Home