Το 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 και υπερπλήρες σε λειτουργίες
Η επιλογή εγκατάστασης μέσω 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