如何查看远程服务器Docker容器内Spring Boot应用的日志
查看Docker容器里Spring Boot应用日志的几种实用方法
方法1:直接用Docker日志命令(不用进容器,最省事)
这是最推荐的方式,不用折腾进容器就能看日志:
- 实时追看日志:
docker logs -f <容器ID/容器名> - 只看最近N行日志:
docker logs --tail N <容器ID/容器名> - 要是用docker-compose部署的,直接在docker-compose.yml所在目录执行:
docker-compose logs -f <服务名>(单服务的话可以省略服务名)
方法2:进容器后找日志文件查看
Spring Boot一般会把日志输出到控制台,要是配置了日志文件,通常在这些位置:
- 应用根目录的
logs文件夹,比如/app/logs(具体路径取决于你镜像构建时的工作目录) - 或者是你自定义配置的日志文件路径
进容器后可以这么操作:
- 先搜索日志文件:
find / -name "*.log" 2>/dev/null(过滤掉权限报错信息) - 实时追看日志内容:
tail -f <找到的日志文件路径> - 查看完整日志文件:
cat <找到的日志文件路径>
方法3:进容器后查看进程控制台输出
如果应用仅把日志输出到控制台,你已经进入容器终端的话,可以这么做:
- 先找到Java进程ID:
ps aux | grep java - 若容器内装有
strace工具,可查看进程输出:strace -p <进程ID> -e write;没装的话先安装:apt-get update && apt-get install strace
优先用方法1,操作简单高效,没必要非得进容器折腾。
内容的提问来源于stack exchange,提问作者Vitaly Gavrilchenko
相关产品推荐
相关产品推荐

