Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux或Windows操作系统的机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker包含镜像、容器、仓库,目的就是通过对应用组件的封装、分发、部署、运行等生命周期的管理,使用户的产品(可以是web应用或者数据库应用)及其环境能够做到“一次封装,到处运行”。本文记录Docker使用中的一些Tips。
一、CentOS下防火墙Firewalld与Docker的兼容性问题等
防火墙兼容性问题在配置文件/etc/docker/daemon.json 文件中添加"iptables": false,DNS与Docker的数据目录也在此设置。示例:
{
"dns":["8.8.8.8","1.1.1.1"],
"data-root": "/data/docker",
"iptables": false
}
然后执行:
systemctl daemon-reload
systemctl restart docker
二、Docker查看日志
使用Docker logs命令,详情如下:
# 显示某个容器的所有log
$ docker logs [OPTIONS] <CONTAINER>
# 显示 docker-compose 启动的所有容器的log
$ docker-compose logs
# 显示某个容器的实时log
$ docker logs -f <CONTAINER>
# 查看某个容器的log尾部,显示最后100行的内容。
$ docker logs --tail 100 <CONTAINER>
# 使用grep过滤某个容器的log
$ docker logs <CONTAINER> | grep something
# 查看某个日期至今的log日志
$ docker logs --since "2022-10-20" <CONTAINER>