轻量级Dozzle日志查看器详细安装指南

安装Dozzlev6.3.0

运行Dozzle v6.3.0

支持的环境变量:dozzle.dev/guide/suppo...

不带密码的方式

shell 复制代码
docker run --name dozzle \
   -p 8080:8080 \
   -v /run/docker.sock:/var/run/docker.sock:ro \
   -d amir20/dozzle:v6.3.0

simple方式的权限认证

通过设置--auth-providersimple来支持多用户身份验证。在此模式下,Dozzle将读取/data/users.yml

sh 复制代码
docker run --name dozzle \
   -p 8080:8080 \
   -e DOZZLE_AUTH_PROVIDER=simple \
   -v /run/docker.sock:/var/run/docker.sock:ro \
   -v /data/docker/dozzle/data:/data \
   -d amir20/dozzle:v6.3.0
  • 用户账号密码配置文件

    密码使用sha256进行哈希处理,在Linux中可以使用echo -n 'admin@234' | shasum -a 256或者echo -n 'admin@234' | sha256sum生成密码

yaml 复制代码
users:
  # "admin" here is username
  admin:
    name: "Admin"
    # Just sha-256 which can be computed with "echo -n 'admin@234' | shasum -a 256"
    password: "bb74269430ae549706b3ac30f5af7236297e7edae282914f7ec6f3b688de58c9"
    email: admin@dozzle.com
  guest:
    name: "查看员"
    # Just sha-256 which can be computed with "echo -n 'guest@123' | shasum -a 256"
    password: "a494070039624806e81be390b0db35af8023bad980c9b216afdd16da099f1fca"
    email: guest@dozzle.com

配置支持容器启停操作

添加环境变量DOZZLE_ENABLE_ACTIONS等于true

shell 复制代码
docker run --name dozzle \
   -p 8080:8080 \
   -e DOZZLE_AUTH_PROVIDER=simple \
   -e DOZZLE_ENABLE_ACTIONS=true \
   -v /run/docker.sock:/var/run/docker.sock:ro \
   -v /data/docker/dozzle/data:/data \
   -d amir20/dozzle:v6.3.0

多个远程主机支持配置不使用TLS证书(不建议)

docker 2375 端口默认没有开启任何认证,这样使得docker极不安全的
建议使用TLS证书对docker 2375端口进行通讯

  1. 配置不带TLS的远程访问

    在需要远程访问的目标服务器配置docker远程访问

    • 编辑/usr/lib/systemd/system/docker.service文件

      修改ExecStart的值,添加-H tcp://0.0.0.0:2375如下:

      sh 复制代码
      # 配置不带 TCP + TLS 认证
      ExecStart=/usr/bin/dockerd -H fd:// -H tcp://0.0.0.0:2375 --containerd=/run/containerd/containerd.sock
    • 重载systemctl配置

      sh 复制代码
      sudo systemctl daemon-reload
    • 重启 Docker

      sh 复制代码
      sudo systemctl restart docker.service
    • 验证更改是否成功

      sh 复制代码
      sudo netstat -lntp | grep dockerd
      
      tcp        0      0 127.0.0.1:2375          0.0.0.0:*               LISTEN      3758/dockerd
  2. 运行容器

    shell 复制代码
    docker run --name dozzle \
       -p 18081:8080 \
       -e DOZZLE_ENABLE_ACTIONS=true \
       -e DOZZLE_HOSTNAME=192.168.1.9 \
       -e DOZZLE_REMOTE_HOST=tcp://192.168.1.253:2375,tcp://192.168.1.254:2375,tcp://192.168.1.6:2375 \
       -v /var/run/docker.sock:/var/run/docker.sock:ro \
       -d amir20/dozzle:v6.3.0

多个远程主机支持配置使用TLS证书(建议)

推荐一个生成证书的脚本:gitee.com/dromara/Jpo...

  1. 执行生成证书脚本

    在需要查看日志的远程主机上执行

    shell 复制代码
    wget https://gitee.com/dromara/Jpom/raw/master/script/docker-tls.sh
    sh docker-tls.sh

    输入的iphost应该是 需要查看日志的远程主机iphost

    生成成功打印:

  2. 配置带TLS的远程访问

    在需要远程访问的目标服务器配置docker远程访问

    • 编辑/usr/lib/systemd/system/docker.service文件

      修改ExecStart的值,添加-H tcp://0.0.0.0:2375如下:

      sh 复制代码
      # 配置不带 TLS 认证
      ExecStart=/usr/bin/dockerd -H fd:// -H tcp://0.0.0.0:2375 --tlsverify --tlscacert=/docker/tls/ca.pem --tlscert=/docker/tls/server-cert.pem --tlskey=/docker/tls/server-key.pem
    • 重载systemctl配置

      sh 复制代码
      sudo systemctl daemon-reload
    • 重启 Docker

      sh 复制代码
      sudo systemctl restart docker.service
  3. 挂载证书

    所有证书需要挂载到/certs目录下,目录下应该有:key.pemca.pemcert.pem

    多个远程主机使用{host}区分,如:/cert/192.168.1.253/目录下应该有:key.pemca.pemcert.pem

  4. 运行容器

    sh 复制代码
    docker run --name dozzle \
       -p 18081:8080 \
       -e DOZZLE_AUTH_PROVIDER=simple \
       -e DOZZLE_HOSTNAME=192.168.1.252 \
       -e DOZZLE_REMOTE_HOST=tcp://192.168.1.253:2375,tcp://192.168.1.254:2375 \
       -v /var/run/docker.sock:/var/run/docker.sock:ro \
       -v /data/docker/dozzle/data:/data \
       -v /data/docker/dozzle/certs:/certs \
       -d amir20/dozzle:v6.2.6

成功界面展示

相关推荐
超级小忍31 分钟前
Spring Boot 配置文件常用配置属性详解(application.properties / application.yml)
java·spring boot·后端
麦兜*32 分钟前
基于Spring Boot的审计日志自动化解决方案,结合SpEL表达式和AOP技术,实现操作轨迹自动记录,并满足GDPR合规要求
java·jvm·spring boot·后端·spring·spring cloud·maven
Victor35632 分钟前
MySQL(167)如何理解MySQL的Redo Log和Undo Log?
后端
Victor35633 分钟前
MySQL(168)MySQL如何实现崩溃恢复?
后端
conkl2 小时前
构建 P2P 网络与分布式下载系统:从底层原理到安装和功能实现
linux·运维·网络·分布式·网络协议·算法·p2p
二哈喇子!4 小时前
若依【(前后端分离版)SpringBoot+Vue3】
java·spring boot·后端
paopaokaka_luck5 小时前
婚纱摄影管理系统(发送邮箱、腾讯地图API、物流API、webSocket实时聊天、协同过滤算法、Echarts图形化分析)
vue.js·spring boot·后端·websocket·算法·echarts
π大星星️5 小时前
Nginx 四层(stream)反向代理 + DNS 负载均衡
运维·nginx·负载均衡
beyoundout5 小时前
HAproxy
linux·运维·服务器
qq_218753317 小时前
服务器查日志太慢,试试grep组合拳
运维·服务器