2

mac os x 10 9(mac osx 10.11)

Apple M1处理器,七核核心显卡,视网膜显示屏,妙控背光键盘 参考价 ¥ 7999-9799

Apple M1处理器,七核核心显卡,视网膜显示屏,妙控背光键盘

参考价

7999-9799

优惠直达

M1|集显

8GB|256GB

屏幕尺寸

13.3英寸 2560x1600

笔记本重量

1.29Kg

内存容量

8GB

硬盘容量

256GB SSD固态硬盘

操作系统

Mac OS

进一步理解Docker容器日志

平时,我们使用docker logs命令可以随时查看Docker容器内部应用程序运行时所产生的日志,这样可以避免首先进入Docker容器,再打开应用程序的日志文件的过程。

可见,docker logs是一种相当便捷的工具。 docker logs会监控容器中操作系统的标准输出设备(STDOUT),一旦STDOUT有数据产生,就会将这些数据传输到另一个“设备”中,该设备在Docker的世界中被称为“日志驱动(Logging Driver)”。

为了便于研究,我们以官方提供的Nginx镜像为例,来初步学习dockerlogs的基本技法。首先我们要做的是,通过以下Docker命令启动Nginx容器。

docker run -d -p 80:80 --name nginx nginx

我们启动了一个Nginx容器,该容器中的Nginx进程在后台运行(d),对外暴露了一个80端口,同时也映射到容器内部的80端口(p80:80),该容器的名称为nginx( 。打开浏览器,在地址栏中发送网页链接请求(80端口可以省略不写),可以立即看到Nginx的首页。

随后我们使用docker logs命令,查看Nginx容器的日志:

docker logs -f nginx

具体执行结果如图一所示,我们监控日志尾部(f),此后在浏览器中刷新几下,同时观察到Docker日志也在同步输出,此时输出的日志类似下面这样。

172.17.0.1 - - [27/Dec/2022:05:12:20 +0000] "GET / HTTP/1.1" 304 0 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36" "-"

很明显,这是Nginx收集的浏览器信息,此外还包括了客户端IP、请求时间、请求状态等信息。只要Docker容器内部的应用程序在控制台中有日志输出,就能通过docker logs命令来查看相应的日志。

Docker是怎样做到的呢?或者说,所谓的Docker日志驱动,到底做了些什么事情呢?我们带着这些问题继续探索。

我们使用docker info命令,可以看到Docker容器的相关信息,其中有一项叫LoggingDriver的字段:

docker info | grep 'Logging Driver'

通过输入以上命令,将得到Docker当前所设置的日志驱动类型,它就是jsonfile。顾名思义,jsonfile表示JSON文件,也就是说,Docker容器内部的应用程序所输出的日志,将自动写入一个JSON文件中。那么这个JSON日志文件到底存储在哪里呢?

通过学习Docker官方文档可知,有一个/var/lib/docker目录用于存放Docker的系统文件。进入该目录,就能看到一个名为containers的目录,这个目录中存放的就是当前运行的Docker容器,那么这个JSON日志文件是否也在containers目录中呢?

进入/var/lib/docker/containers/<container_id>目录,就会看到一个名为<container_id>json.log的文件,它就是我们要寻找的JSON日志文件了.

如图3 所示,这里的containerId 是1a0fe, 目录下也存在一个1a0fe20e760f71a05f310974bad80055e6d677e4ef0fe64722895f876d725d27-json.log文件。

原来如此,当我们通过docker logs命令所看到的日志,实际上就是解析这个JSON日志文件后的输出。

既然应用程序的日志可以写入JSON文件中,那么也能写入其他日志驱动中,jsonfile只是Docker日志驱动的一种默认选项,Docker已为我们提供了大量的日志驱动类型。

●none:容器不输出任何日志

●jsonfile:容器输出的日志以JSON格式写入文件中(默认)

●syslog:容器输出的日志写入宿主机的Syslog中

●journald:容器输出的日志写入宿主机的Journald中

●fluentd:容器输出的日志写入宿主机的Fluentd中

。。。

在以上众多日志驱动类型中,最为常用的是Syslog,因为Syslog是Linux的日志系统,很多日志分析工具都可以从Syslog中获取日志,比如流行的ELK框架。

#Docker##Docker 日志##Docker 日志文件##自定义Docker日志##Docker json-file#

点赞关注我,分享越南有趣事#苹果昨晚发布了MacBook air 和MacBook Pro,搭载M2芯片性能更加强大,功耗更低,这台是我在越南买的MacBook air 2020 M1 ,花了21,500,000越南盾,折合人民币约5970元,大家觉得划算吗?是不是觉得早知道等MacBook Air 2022出来再买更划算呢?#MacBook Air# #Mac OS 13 Ventura# #越南# 越南MacBook air

【RealityOS 商标亮相,苹果 AR/VR 头戴式设备即将发布?】

9to5Mac 报道,网友 Parker Ortolani 发现有一家名为 Realityo Systems LLC 在美国专利商标局注册了商标「RealityOS」,随后其他网友也发现该公司还在其他国家或地区申请了同一个商标。之前有爆料称 RealityOS 是苹果 AR/VR 设备的操作系统名称。

一般来说苹果为了保密,会提前注册一些空壳公司来申请商标,等产品正式发布之后再将商标转移。例如去年苹果就使用名为 Yosemite Research LLC 的公司注册了 macOS 新系统名称「Monterey」的商标。而今天发现的Realityo Systems LLC 和 Yosemite Research LLC 这两家公司的注册地址都指向了商标服务公司 Corporation Trust Center,苹果正是其客户之一。

这些种种迹象都意味着苹果很可能要在 WWDC22 上发布旗下首款 AR/VR 头戴式设备,已经很期待了!一周之后见真章!

本文来自网络,不代表本站立场。转载请注明出处: https://tj.jiuquan.cc/a-2581082/
1
上一篇qq在线升级(qq在线升级下载)
下一篇 苹果账号(苹果账号可以在两台手机一起登录吗)

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: alzn66@foxmail.com

关注微信

微信扫一扫关注我们

返回顶部