2.5.7 - https://pypi.org/project/granian/
Поскольку мне нужно настроить разрешенную версию TLS и минимальную версию, я подумал, что мне повезло, потому что в последнем обновлении granian они включают --ssl-protocol-version и --ssl-protocol-min флаги. Итак, я обновил свои требования, убедился, что установлена версия granian 2.5.7, однако я продолжаю получать сообщение об ошибке, что этих флагов не существует? Интересно, сталкивается ли кто-нибудь еще с такой же проблемой?
Код: Выделить всё
docker run --rm myImage pip show granian
Домашняя страница: https://github.com/emmett-framework/granian
Автор: Электронная почта автора: Джованни Бариллари g@baro.dev Лицензия:
BSD-3-Clause Местоположение: /usr/local/lib/python3.13/site-packages
Требуется: нажмите «Требуется:
Чтобы увидеть, что я пересобрал свой контейнер:
Код: Выделить всё
docker compose build --no-cache
docker compose up -d
Код: Выделить всё
...
--access-log-fmt TEXT Access log format [env var:
GRANIAN_LOG_ACCESS_FMT]
--ssl-certificate FILE SSL certificate file [env var:
GRANIAN_SSL_CERTIFICATE]
--ssl-keyfile FILE SSL key file [env var: GRANIAN_SSL_KEYFILE]
--ssl-keyfile-password TEXT SSL key password [env var:
GRANIAN_SSL_KEYFILE_PASSWORD]
--ssl-ca FILE Root SSL cerificate file for client
verification [env var: GRANIAN_SSL_CA]
--ssl-crl FILE SSL CRL file(s) [env var: GRANIAN_SSL_CRL]
--ssl-client-verify / --no-ssl-client-verify
Verify clients SSL certificates [env var:
GRANIAN_SSL_CLIENT_VERIFY; default:
(disabled)]
--url-path-prefix TEXT URL path prefix the app is mounted on [env
var: GRANIAN_URL_PATH_PREFIX]
...
я вижу:
Код: Выделить всё
...
--access-log-fmt TEXT Access log format [env var:
GRANIAN_LOG_ACCESS_FMT]
--ssl-certificate FILE SSL certificate file [env var:
GRANIAN_SSL_CERTIFICATE]
--ssl-keyfile FILE SSL key file [env var: GRANIAN_SSL_KEYFILE]
--ssl-keyfile-password TEXT SSL key password [env var:
GRANIAN_SSL_KEYFILE_PASSWORD]
--ssl-protocol-min [tls1.2|tls1.3]
Set the minimum supported protocol for SSL
connections. [env var:
GRANIAN_SSL_PROTOCOL_MIN; default: (tls1.3)]
--ssl-ca FILE Root SSL cerificate file for client
verification [env var: GRANIAN_SSL_CA]
--ssl-crl FILE SSL CRL file(s) [env var: GRANIAN_SSL_CRL]
--ssl-client-verify / --no-ssl-client-verify
Verify clients SSL certificates [env var:
GRANIAN_SSL_CLIENT_VERIFY; default:
(disabled)]
--ssl-protocol-version [auto|1.2|1.3]
Override the supported ssl protocol versions
and pin to the one specified. [env var:
GRANIAN_SSL_PROTOCOL_VERSION; default: auto]
--url-path-prefix TEXT URL path prefix the app is mounted on [env
var: GRANIAN_URL_PATH_PREFIX]
...
Код: Выделить всё
my-container | Usage: granian [OPTIONS] APP
my-container | Try 'granian --help' for help.
my-container |
my-container | Error: No such option: --ssl-protocol-min
Код: Выделить всё
CMD ["granian", \
"--host", "0.0.0.0", \
"--port", "16700", \
"--interface", "asgi", \
"--workers", "8", \
"--ssl-certificate", "/etc/ssl/certs/app/cert.crt", \
"--ssl-keyfile", "/etc/ssl/certs/app/cert.key", \
"--ssl-protocol-min", "tls1.2", \
"--ssl-protocol-version", "auto", \
"src.my_app.main:app"]
Подробнее здесь: https://stackoverflow.com/questions/798 ... figuration
Мобильная версия