Artifacts Associated With Ticket 68c6b9a36f973c82773ffab17c67bf077cf097a2
Ticket change [327409fd96] (rid 11874) by thelittlefireman on 2020-10-06 12:06:20:
- foundin initialized to: "1.12.1"
- icomment:
Bonjour, J'essaie de créer un conteneur docker pour lancer Grammalecte en docker mais lorsque je démarre le serveur, celui-ci reste bloqué (attend un appui sur la touche entrée ???) et ne se lance que lorsque je quitte le docker. Le serveur ne semble pas lancé, j'ai testé un curl http://localhost:8080/ mais j'obtiens une erreur "connection reset" Créer le conteneur : docker build -t grammalecte:latest . Démarrer le conteneur : docker run --rm -p 8080:8080 --name gr grammalecte:latest Dockerfile ``` FROM python:3-alpine AS src ENV VERSION 1.12.2 RUN apk add --update --no-cache \ unzip \ wget \ && wget http://www.dicollecte.org/grammalecte/zip/Grammalecte-fr-v${VERSION}.zip \ && unzip Grammalecte-fr-v${VERSION}.zip -d /srv FROM python:3-alpine COPY --from=src /srv/ /srv EXPOSE 8080 CMD python /srv/grammalecte-server.py -p 8080 -t -mp 1 ```
- login: "thelittlefireman"
- mimetype: "text/plain"
- private_contact initialized to: "666251e9bf5de6378f5514a360268b0948bc6342"
- severity initialized to: "Severe"
- status initialized to: "Open"
- title initialized to: "[FR] Grammalecte dans un container docker"
- type initialized to: "Code_Defect"
Ticket change [6aedc5b38e] (rid 11875) by olr on 2020-10-06 14:45:00:
- icomment:
Bonjour, Je ne connais Docker que de nom. Ce que je vais vous dire n’est donc que suppositions. Attendu que le serveur utilise un ProcessPoolExecutor, même avec un seul processus dédié à la tâche du correcteur grammatical, j’imagine qu’il y a peut-être un réglage à effectuer pour le processus dédié. L’autre possibilité, c’est que le serveur Bottle.py (https://bottlepy.org/docs/dev/) sur lequel se base Grammalecte a besoin (lui aussi) d’un configuration particulière. À mon avis, c’est de l’un de ces points, voire des deux, que vient le problème.
- login: "olr"
- mimetype: "text/x-fossil-plain"
- priority changed to: "Immediate"
- resolution changed to: "Open"
- subsystem changed to: "Grammalecte_Core"
- icomment:
Ticket change [60f672f0eb] (rid 11876) by olr on 2020-10-06 14:50:43:
- icomment:
Par ailleurs, l’adresse http://www.dicollecte.org/ est obsolète, utilisez https://grammalecte.net
- login: "olr"
- mimetype: "text/x-fossil-plain"
- icomment:
Ticket change [1df036563e] (rid 11877) by thelittlefireman on 2020-10-07 16:59:55:
- icomment:
Merci pour vos retours. J'ai réussi à le faire tourner correctement. Il faut ajouter l'argument "ENV PYTHONUNBUFFERED TRUE" pour éviter que les logs soient stocké dans un buffer et bloque le programme python. Donc pour info, vous pouvez ajouter ces informations dans votre répo : Dockerfile: ``` FROM python:3-alpine AS src ENV VERSION 1.12.2 RUN apk add --update --no-cache \ unzip \ wget \ && wget https://grammalecte.net/grammalecte/zip/Grammalecte-fr-v${VERSION}.zip \ && unzip Grammalecte-fr-v${VERSION}.zip -d /srv FROM python:3-alpine COPY --from=src /srv/ /srv ENV PYTHONUNBUFFERED TRUE EXPOSE 8080 WORKDIR /srv ENTRYPOINT ["python3"] CMD ["grammalecte-server.py","-ht", "0.0.0.0","-p","8080","-t"] ``` Créer le conteneur : `docker build -t grammalecte:latest .` Lancer le conteneur : `docker run --rm -p 8080:8080 --name gr grammalecte:latest`
- login: "thelittlefireman"
- mimetype: "text/x-fossil-plain"
- icomment:
Ticket change [e8c93881a6] (rid 11878) by thelittlefireman on 2020-10-07 17:07:49:
- icomment:
Pour info : https://github.com/thelittlefireman/docker-grammalecte https://hub.docker.com/r/thelittlefireman/docker-grammalecte
- login: "thelittlefireman"
- mimetype: "text/x-fossil-plain"
- icomment:
Ticket change [5409afff19] (rid 11883) by olr on 2020-10-08 13:30:14:
- icomment:
Merci. J’ai ajouté votre fichier au dépôt.
- login: "olr"
- mimetype: "text/x-fossil-plain"
- resolution changed to: "Rejected"
- status changed to: "Fixed"
- type changed to: "Installation"
- icomment:
Ticket change [16cb6efd06] (rid 11886) by thelittlefireman on 2020-10-09 13:43:57:
- icomment:
merci :) Vous devriez juste renommer votre fichier "Dockerfile.txt" en "Dockerfile" le nom est important pour la compilation rapide du conteneur. Vous pouvez également (si vous le souhaitez) ajouter une routine pour créer le conteneur automatiquement et le distribuer sur https://hub.docker.com/
- login: "thelittlefireman"
- mimetype: "text/x-fossil-plain"
- icomment:
Ticket change [6ad3baa055] (rid 11887) by thelittlefireman on 2020-10-09 13:45:04:
- icomment: "* "dockerfile.txt" ==> "Dockerfile""
- login: "thelittlefireman"
- mimetype: "text/x-fossil-plain"
Ticket change [162440b455] (rid 11894) by olr on 2020-10-10 06:56:00:
- icomment:
“dockerfile.txt” will become “Dockerfile” in the downloadable Grammalecte package.
- login: "olr"
- mimetype: "text/x-fossil-plain"
- resolution changed to: "Fixed"
- icomment:
Ticket change [8e05082c1e] (rid 11895) by olr on 2020-10-10 06:56:25:
- login: "olr"
- mimetype: "text/x-fossil-plain"
- status changed to: "Closed"