python-3.x - Docker 日志格式化
问题描述
我有一个带有 REST API 的应用程序的 Docker 容器。
我想通过 来检查发生了什么docker logs
,但它以奇怪的格式打印:
docker logs -f 2b46ac8629f5
* Running on http://0.0.0.0:9002/ (Press CTRL+C to quit)
172.18.0.5 - - [03/Mar/2019 13:53:38] code 400, message Bad HTTP/0.9 request type
("\x16\x03\x01\x00«\x01\x00\x00§\x03\x03\x0euçÍ'ïá\x98\x12\\W5¥Ä\x01\x08")
172.18.0.5 - - [03/Mar/2019 13:53:38] "«§uçÍ'ïá\W5¥µuìz«Ôw48À,À0̨̩̪À+À/À$À(kÀ#À'gÀ" HTTPStatus.BAD_REQUEST -
是否有可能以某种方式修复这些字符串?
更新:
我的 docker-compose 文件的一部分如下所示:
api:
container_name: api
restart: always
build: ./web
ports:
- "9002:9002"
volumes:
- ./myapp.co.cert:/usr/src/app/myapp.co.cert
- /usr/src/app/myapp/static
- ./myapp.co.key:/usr/src/appmyapp.co.key
depends_on:
- postgres
容器的 Docker 文件web
看起来:
cat web/Dockerfile
# For better understanding of what is going on please follow this link:
# https://github.com/docker-library/python/blob/f12c2df135aef8c3f645d90aae582b2c65dbc3b5/3.6/jessie/onbuild/Dockerfile
FROM python:3.6.4-onbuild
# Start myapp API.
CMD ["python", "api.py"]
api.py
使用 Python 3.6 启动 Flask 应用程序
解决方案
推荐阅读
- angular - rxjs:我怎样才能得知取消订阅 observable
- command-line-interface - Picocli:使用可选值指定选项的最佳方法,当未指定值时打印当前值
- google-drive-api - 通过 python api 将 zip 文件上传到谷歌团队驱动器
- amazon-web-services - 公开存储桶后,Amazon S3 存储桶中的文件被拒绝
- php - WooCommerce 向会员免费送货导致错误
- android - 0Dagger 2:MVVM 无法确定模块范围
- python - 如何在 Python 中使用正则表达式在字符串中进行以下替换?
- extjs - 从 ExtJS 5 升级到 6 后,X 轴不显示在笛卡尔图表中 ExtJS 6.5.3
- reactjs - 调度单个操作后带有新请求的 redux-saga 垃圾邮件
- vagrant - 在 Vagrant 配置脚本中设置 gsettings