从docker集装箱访问日志

我有一个在Docker容器中运行的python服务器。 我login我的消息从Python日志logging,我不知道如何从容器中查找/查看我的日志文件。

# Pull base image FROM python:3 # Copy code to the container ADD src /usr/app WORKDIR /usr/app # run configuration COPY requirements.txt ./ RUN pip install --no-cache-dir -r requirements.txt # Start script CMD [ "python", "./main.py"] 

我像这样启动服务器:

 sudo docker run -it -p 5000:5000 --rm my_app 

我如何访问服务器日志?

谢谢

我认为你可以在你的“docker run”中使用-v参数来将你的主机文件夹挂载到容器中的一个文件夹中。

  sudo docker run -it -p 5000:5000 -v hostPath:containerPathContainingLogs --rm my_app 

然后,您将在hostPath中查看您的日志(它被映射到容器中的containerPathContainingLogs中)。

或者换一种说法,如果你的docker镜像包含bash,你可以使用docker ps -a来find你运行的容器id,然后使用“docker exec -it your-container-id bash”login你的容器,cd到你的日志path并查看您的日志。

或者你可以尝试docker日志your-container-id。

您可以随时通过以下方式检查您的服务的直接docker输出:

 docker logs my-container-instance 

要检查日志path文件,您可以使用:

 docker inspect my-cintainer-instance 

并findjson输出上的LogPath键。