python - 通过子进程运行java应用程序时如何在k8s容器中打印python语句
问题描述
我尝试将标准输出、标准输入设为 None 以及 subprocess.STDOUT。我的容器日志仍然显示 app.jar 的日志。我希望容器显示打印语句和应用程序日志。完全禁用日志会使容器不打印任何日志。我不想让查看者的应用程序日志使我的容器混乱,但想显示当前执行的位置
**code.py**
pro = subprocess.Popen(
['/bin/java', '-jar', '/apps/ZAP_2.10.0/app.jar',
'-daemon', '-host', 'localhost', '-port', '8080', '-dir', '', '-silent', '-config', 'api.key=ZAP',
'-config', 'api.addrs.addr.regex=true', '-config', 'connection.timeoutInSecs=300'], shell=False,
stdin=None, stdout=subprocess.DEVNULL, stderr=subprocess.STDOUT, close_fds=True)
print("App is running!")
码头工人文件:
RUN wget app.zip &&
unzip app.zip \
rm -f app.zip
CMD ["/bin/bash", "script.sh"]
我的 script.sh 文件:
#!/bin/bash`
source venv/bin/activate`
python code.py
我的 code.py 有我在问题中提到的内容。我将其部署为“部署”配置。
解决方案
推荐阅读
- javafx - 按下键时单击 javafx 复选框不会改变状态
- postgresql - 如何在 postgres CTE 查询计划中获取“内存使用情况”?
- c# - 正则表达式使用正则表达式在一组单词之后立即查找单词
- c# - 使用 ObservableCollection 获取模型数据
ado.net - javascript - 如何加快多个合约的代币余额
- javascript - 如何在我的网站中集成谷歌日历?
- python - 在 Beautiful Soup 中找不到字符串
- javascript - 使用深度链接从 Web 浏览器打开 ios/android 应用程序时,如何将数据传递到移动应用程序
- python - 相关热图 - Seaborn -> 掩码和样式不会产生三角相关矩阵
- terminal - Rsync 音乐文件未与 Plex 连接