我的 Dockerfile 是
FROM node:4
RUN npm install -g yarn
WORKDIR /app
Run Code Online (Sandbox Code Playgroud)
我docker run -d将当前工作目录作为卷运行并挂载。所有的 deps 都由yarn. 我有一个 npm 脚本来整理文件。
如果我这样做,docker exec -it [container] npm run lint它会按预期工作,并且我可以看到所有日志。但是如果我这样做docker exec -itd [container] npm run lint,它会立即退出,这是预期的。但是我无法通过运行查看日志docker logs [container]。如何重新附加 exec 或仅查看日志?
我试过docker attach [container]它转到nodejs的repl。这是为什么?
如“ Docker查看退出容器的日志”中所述,您可以使用docker logs
docker logs -t <container>
Run Code Online (Sandbox Code Playgroud)
这将显示 stdout/stderr (由于该-t选项而带有时间戳)。
对于这些日志的最后 50 行:
docker logs -t <container id> | tail -n 50
Run Code Online (Sandbox Code Playgroud)
注意:只有当 npm run lint 由您的容器 ( docker run <image> npm run lint)运行时才有效
如果您docker exec立即退出,那么是的,容器本身不会产生任何日志。
| 归档时间: |
|
| 查看次数: |
1516 次 |
| 最近记录: |