Εγκατάσταση του wallabag σε Raspberry Pi

Το wallabag είναι μια read it later υπηρεσία τύπου pocket την οποία μπορούμε να την κάνουμε self host
Απο το πλήθος των διαθέσιμων self hosted bookmark manager που μπορούμε να τρέξουμε στο πι ξεχωρίζει γιατί διαθέτει λειτουργικά offficial browser addon , λειτουργικό import από άλλες υπηρεσίες αλλά και exported browser bookmarks , native foss (εννοείτε) android εφαρμογή με fdroid repo και μπορεί (με μια διαδικασία που θα δούμε) να εγκατασταθεί σαν docker container ενώ είναι και ιδιαίτερα δημοφιλές με active comunity και υπερπλήρες σε λειτουργίες

documentation

Η επιλογή εγκατάστασης μέσω docker έγινε γιατί το wallabag έχει ένα πλήθος από προαπαιτούμενες εγκαταστημένες υπηρεσίες σαν requirement και δεν θέλω να τις έχω εγκατεστημένες απευθείας στο σύστημα
Η ιδιαιτερότητα με το wallabag docker container είναι ότι δεν δίνετε κάποιο επίσημο image για arm64 αρχιτεκτονική που μας ενδιαφέρει παρά μόνο amd64
Αρα ή θα χρησιμοποιήσουμε κάποιο prebuilded image απο το dockerhub η θα κάνουμε build το δικό μας
Το image του ikaruswill/wallabag είναι σχετικά πρόσφατο (2 μήνες) και αρκετά δημοφιλές με πάνω απο 10κ downloads
για να το κατεβάσουμε

docker pull ikaruswill/wallabag

Για να δημιουργήσουμε μόνοι μας arm64 image θα πρέπει ή να εκτελέσουμε build στο ιδιο το πι η διαφορετικά buildx σε οποιοδήποτε μηχάνημα οποιασδήποτε αρχιτεκτονικής
εδώ θα κάνουμε build από το πι

κάνουμε clone το wallabag docker git repo

git clone https://github.com/wallabag/docker.git

μπαίνουμε στο φάκελο docker

cd docker

Ξεκινάμε το build . Προσοχή στην τελεία

docker build .

Μετα την ολοκληρωση αντιγράφουμε το id του image γιατί θα χρειαστεί για την δημιουργία του container

docker images
copy image id

κάνουμε docker run είτε το Image που κατεβασαμε είτε το image poy καναμε build προστθέτοντας τα απαραίτητα environment variables

docker run -d --name wallabag --restart=always -v /opt/wallabag/data:/var/www/wallabag/data -v /opt/wallabag/images:/var/www/wallabag/web/assets/images -p any_port:80 -e SYMFONY__ENV__DOMAIN_NAME=https://your_domain -e SYMFONY__ENV__FOSUSER_REGISTRATION=false image_id

--name To όνομα που θα δώσουμε στο container

--restart= Πολιτική επανεκκίνησης .Το container θα ξεκινάει αυτόματα.Επιλέγουμε το τρόπο που θα επανεκκινεί documentation

-v Volumes

-p any_port: Η πόρτα που θα κάνει expose το container στο host επιλέγουμε μια διαθέσιμη

-e SYMFONY__ENV__DOMAIN_NAME= Το ddns domain name μας . Αν επισκεφτούμε το wallabag από οπουδήποτε αλλού θα έχουμε overlaping ui elements

SYMFONY__ENV__FOSUSER_REGISTRATION Αν θα υπάρχει δυνατότητα να προσθέσουμε νέους χρήστες ή όχι (optional default=true)

image_id To id του image που δημιουργήσαμε ή αυτού που κατεβάσαμε

Ολες οι διαθέσιμες enviromental variables link

Επισκεπτόμαστε την localhost:port (αυτή που βάλαμε στο -p) ή την ddns.domain.name:port
Υποψιν material ui icons θα έχουμε μόνο από την SYMFONY__ENV__DOMAIN_NAME

Το default uswername είναι wallabag και το default password είναι wallabag

firefox addon setup

απο την localhost:port/developer η ddns.domain.name:port/developer δημιουργούμε έναν νέο client

Του δίνουμε ένα όνομα και πατάμε create

Αντιγράφουμε τα clinet id και client secret

Στον firefox από την about:addons
Επιλέγουμε preferernces στο wallabag addon 
στο Wallabag URL βάζουμε το domain μας και συμπληρώνουμε αντίστοιχα τα client id,secret,user name,password

android app setup
εντελώς straightforward
από τις επιλογές εισόδου επιλέγουμε other και
δίνουμε την ip του server μας , user name k password

5 Likes

Moυ αρεσει αυτη η νοοτροπια-συνηθεια-τροπος σκεψης :+1: . Θεωρω οτι ειναι καλη πρακτικη.

Και γενικα ευχαριστουμε για τον οδηγο

3 Likes