Skip to main content

Songs on the Security of Networks
a blog by Michał "rysiek" Woźniak

e-Dockleracje

This is an ancient post, published more than 4 years ago.

As such, it might not anymore reflect the views of the author or the state of the world. It is provided as historical record.

Sorry, this is not available in English, displaying in: Polski.

tl;dr e-Deklaracje w dockerze; jeśli chcesz od razu przeskoczyć do informacji, jak z tego skorzystać, by bez walki odpalić je na swoim GNU/Linuksie, kliknij w klikadło

Gdy w 2010r. Ministerstwo Finansów wypuściło program e-Deklaracje (za który dostało nawet od FWiOO zasłużonego “Izydora”), życie użytkowników Linuksa zmieniło się na dwa sposoby.

Po pierwsze, wreszcie mogliśmy oddawać się niewątpliwej przyjemności składania deklaracji podatkowych na naszych wspaniałych, wolnych jak pingwin systemach operacyjnych.

Po drugie, by na tę przyjemność zasłużyć, co roku odprawiać musieliśmy zgoła magiczne rytuały, by rzeczone e-Deklaracje odpalić na nowszej o rok dystrybucji. Zajmowało to zwykle…

A dobę, a pięć…

Problem wynika rzecz jasna ze światłej decyzji oparcia e-Deklaracji o Adobe AIR: zamknięte, własnościowe środowisko uruchomieniowe rozwijane i kontrolowane przez jedną firmę. Firmę znaną z przyjaznego podejścia do systemów operacyjnych spod znaku przyjaznego nielota.

Rzecz jasna niebawem okazało się, że Adobe nie zamierza rozwijać dalej wersji AIR na Linuksa.

Plus jest taki, że zwolennicy wolnego oprogramowania dostali kolejny argument za tym, by instytucje publiczne nie opierały swych działań na zamkniętym oprogramowaniu. Minusem jest konieczność kombinowania, jak by tu coraz bardziej starożytne środowisko odpalić na nowoczesnych dystrybucjach…

A gdyby tak odpalać cały ten majdan na równie antycznej dystrybucji? Wszak i tak odpalany jest tylko raz na rok, na te kilkadziesiąt minut potrzebnych na wypełnienie i wysłanie deklaracji, po czym znów idzie w odstawkę.

Może maszyna wirtualna? To jednak zbyt dużo zabawy, miejsca na dysku, zasobów… Da się inaczej?

Enter the Docker

Docker ułatwia korzystanie z kontenerów – lżejszych braci maszyn wirtualnych. Nie wchodząc w szczegóły, docker ułatwia i automatyzuje tworzenie bardzo dokładnie kontrolowanych środowisk. Coś jak maszyna wirtualna, tyle że wymagająca znacznie mniej zasobów.

“Jak pomyślał, tak zrobił” – et voilà! Zdokeryzowane e-Deklaracje, for your tax reporting pleasure!

Chcę! Jak?

Są dwa wymagania systemowe: docker oraz jądro Linuksa w wersji 3.8 lub późniejszej. Użyszkodników wersji Ubuntu starszych niż 14.04 zapraszam tu; Debiana Wheezy – tu. Gentowcy i pochodni, jestem pewien, poradzą sobie sami.

Jeśli natomiast używamy dowolnego smaku Ubuntu w wersji 14.04 lub nowszej, dockera mamy w repozytoriach:

sudo apt-get install docker.io

Przyda się też dodanie naszego juzera do odpowiedniej grupy:

sudo adduser $USER docker sg docker

Teraz kod. Dla gitowców:

git clone https://git.hackerspace.pl/rysiek/e-dockleracje cd e-dockleracje

Dla reszty świata:

wget https://git.hackerspace.pl/rysiek/e-dockleracje/snapshot/e-dockleracje-master.tar.bz2 tar -xjf e-dockleracje-master.tar.bz2 cd e-dockleracje-master

W tym momencie mamy wszystko, co potrzeba. Uruchamiamy:

./edeklaracje.sh

…i czekamy. Docker pobiera podstawowy obraz Ubuntu 13.10, instaluje w nim konieczne pakiety, pobiera Adobe AIR, Acrobat Readera i same e-Deklaracje, instaluje wszystko, i wreszcie – uruchamia nam e-Deklaracje. Prosto z wydzielonego kontenera, ale z dostępem do naszego dotychczasowego katalogu konfiguracyjnego e-Deklaracji, o ile istnieje.

Budowanie musi zrobić tylko raz, więc następne uruchomienia będą znacznie szybsze.