[voikko] python Voikko ja linux docker container?

Mika Vilpas mika.vilpas at gmail.com
Mon Mar 7 11:07:34 EET 2022


Moi,

joskus pari vuotta sitten näpräilin jotain voikon kanssa, ja sen pohjalta
tein jotain docker-ominaisuuksia projektiin. Aika huonot muistikuvat on
kyllä jäljellä siitä, miten hommat toimi, mutta ajattelin jotain kirjottaa
- toivottavasti tällä pääsee alkuun.

https://github.com/voikko/corevoikko/tree/master/docker
https://github.com/voikko/corevoikko/blob/master/voikko-fi/devenv/Dockerfile

Tuolla on jotain Dockerfilejä - muistaakseni itse tein tuon jälkeisemmän.
En tosin yhtään tiedä, missä kunnossa se enää on.
Nopeasti lukaistuna voi olla, että tuo aiempi olisi sinulle hyödyllinen.
Kukaties se toimisi jopa ilman muutoksia, tai edes pienillä muutoksilla
olisi hyödyllinen lähtökohta.

En osaa projektista kyllä sen enempää kertoa, koska oma osallistuminen oli
pelkästään pintakosketus, mutta toivottavasti tästä on edes vähän apua.

Mika

ma 7. maalisk. 2022 klo 8.33 Eeva Nikkari (eevanikkari at gmail.com) kirjoitti:

> Hei!
>
> Yritän dockerisoida python voikkoa linux containeriin, mutta saan
> "AttributeError: /usr/lib/x86_64-linux-gnu/libvoikko.so.1: undefined
> symbol: voikkoGetAttributeValues" -errorin
> (Lopullinen tavoite tehdä aws lambda funktiolle docker container)
>
> Olisiko jollakulla toimivaa Linux container esimerkkiä tai neuvoja miten
> alla olevan containerin saisi toimimaan? :)
> Virhe liittyy ehkä versionumeroihin? Mutta en ole keksinyt miten ne saisi
> korjattua
> Tarvitsen vain sanojen perusmuotoistamis ominaisuuden
>
> app/app.py
> ```
> import libvoikko
>
> import os
>
> v = libvoikko.Voikko(u"fi")
>
> print(v.analyze(word="kissoja"))
>
> ```
>
> Dockerfile
> ```
> FROM python:3.7-buster
>
>
> # Installing lambda runtime interface console
> RUN pip install awslambdaric
>
> RUN pip install libvoikko
>
> RUN apt-get update \
>     && apt-get install -y voikko-fi python-libvoikko
>
> ##Place the executable file in the container.
> ARG APP_DIR="/home/app/"
> WORKDIR ${APP_DIR}
> COPY app ${APP_DIR}
> #
> CMD ["python", "app.py" ]
>
> ```
>
> Buildaan & ajan containerin:
> $docker build -t lambda .
>
> Niin ajaessa tulee seuraava virhe:
> $ docker run lambda
> Traceback (most recent call last):
>   File "app.py", line 7, in <module>
>     v = libvoikko.Voikko(u"fi")
>   File "/usr/local/lib/python3.7/site-packages/libvoikko.py", line 436, in
> __init__
>     self.__lib = self.__getLib()
>   File "/usr/local/lib/python3.7/site-packages/libvoikko.py", line 422, in
> __getLib
>     return VoikkoLibrary.open(path=cls._sharedLibrarySearchPath)
>   File "/usr/local/lib/python3.7/site-packages/libvoikko.py", line 302, in
> open
>     return cls(fileName)
>   File "/usr/local/lib/python3.7/site-packages/libvoikko.py", line 404, in
> __init__
>     self.voikkoGetAttributeValues.argtypes = [c_void_p, c_char_p]
>   File "/usr/local/lib/python3.7/ctypes/__init__.py", line 377, in
> __getattr__
>     func = self.__getitem__(name)
>   File "/usr/local/lib/python3.7/ctypes/__init__.py", line 382, in
> __getitem__
>     func = self._FuncPtr((name_or_ordinal, self))
> AttributeError: /usr/lib/x86_64-linux-gnu/libvoikko.so.1: undefined
> symbol: voikkoGetAttributeValues
>
> Kiitos paljon kaikesta avusta,
> E. Nikkari
>
> (lähetin viestin kahdesti, koska ensimmäisellä kerralla en ollut listalla,
> pahoittelut jos se tuli kahteen kertaan! :) )
> _______________________________________________
> voikko mailing list
> voikko at lists.puimula.org
> https://lists.puimula.org/listinfo/voikko
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puimula.org/pipermail/voikko/attachments/20220307/255f530c/attachment-0001.html>


More information about the voikko mailing list