Превратить функции и команды в веб -службы
Для примера реального мира см. В превращении функции Python в веб -сервис.
webify - это очень простой сервер CGI, который пересылает все запросы на один сценарий. Цель дизайна-быть как можно более нулевой конфигурацией.
webify вызывает ваш сценарий и записывает тело запроса на ваш процесс Stdin. Затем stdout возвращается обратно к клиенту в качестве тела ответа HTTP.
Если ваш скрипт возвращает ненулевой код выхода, код состояния ответа HTTP будет 500.
webify доступен на странице выпуска проекта.
На macOS он также может быть установлен через Macports:
sudo port install webify # Make a web service out of `wc` to count the characters in the request body.
$ webify wc -c
2020/08/25 12:42:32 listening on :8080, proxying to wc -c
...
$ curl -d ' This is a really long sentence ' http://localhost:8080
30Официальное изображение Docker - Beefsack/Webify.
Его можно настроить с помощью следующих переменных среды:
ADDR - адрес для прослушивания внутри контейнера, по умолчанию :80SCRIPT - команда для выполнения, по умолчанию /script $ docker run -it --rm -p 8080:80 -v /path/to/my/script:/script beefsack/webify:latest
2020/08/25 04:27:46 listening on :80, proxying to /script
...
$ curl -d 'Some data' http://localhost:8080
Создайте Dockerfile , как следующее:
FROM beefsack/webify:latest
COPY myscript /script
Приглашаются запросы. Для серьезных изменений, пожалуйста, сначала откройте проблему, чтобы обсудить, что вы хотели бы изменить.
Пожалуйста, обязательно обновите тесты по мере необходимости.
Грань