log.io实时日志平台docker部署

 

没有复杂的中间件依赖安装和配置,只要一个简单的docker容器即可搭建一个实时日志查看平台。

下面是我的dockerfie

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
FROM docker.io/node:20.14.0-alpine
LABEL maintainer="jiafeng"
 
RUN npm config set registry http://registry.npm.taobao.org \
    && npm config set strict-ssl false \
    && npm install -g log.io \
    && npm install -g log.io-file-input \
    && mkdir /root/.log.io \
    && mkdir /home/logs
 
ENV LOG_IO_MODE=server
 
CMD if [ "$LOG_IO_MODE" = "server" ]; then \
        log.io-server; \
    elif [ "$LOG_IO_MODE" = "client" ]; then \
       log.io-file-input; \
    else \
       echo "Unknown mode: $LOG_IO_MODE"; \
    fi

 假设我构建出来的镜像tag是 jiafeng/logio:v6

在服务端机器上执行一下指令

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# 创建服务端日志目录
mkdir /root/.log.io
 
# 填写服务端配置
cat > /root/.log.io/server.json<EOF
{
  "messageServer": {
    "port": 6689,
    "host": "0.0.0.0"
  },
  "httpServer": {
    "port": 6688,
    "host":"0.0.0.0"
  }
}
EOF
 
# 启动服务端容器
docker run -d -p 6689:6689 -p 6688:6688 --name logio \
  -v /root/.log.io:/root/.log.io \
  jiafeng/logio:v6

启动之后就可以用宿主机的ip:6688访问UI界面了。

 接下来我们配置客户端

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
# 创建配置目录
mkdir -p /root/.log.io/inputs
 
# 创建测试日志目录
mkdir /home/logs
 
# 填写配置文件
cat > /root/.log.io/inputs/file.json <EOF
{
    "messageServer": {
        "port": 6689,
        "host": "192.168.29.130"
    },
    "inputs": [
        {
            "source": "app1",
            "stream": "node1",
            "config": {
                "path": "/home/logs/app1.log"
            }
        },
        {
            "source": "app2",
            "stream": "node1",
            "config": {
                "path": "/home/logs/app2.log"
            }
        }
    ]
}
EOF
 
# 准备一个模拟写日志的脚本
cat > product.sh<EOF
 
#/bin/bash
 
while true
do
sleep 1
echo "$(date +'%Y-%m-%d %H:%M:%S') This is app1 log!" >> /home/logs/app1.log
echo "$(date +'%Y-%m-%d %H:%M:%S') This is app2 log!" >> /home/logs/app2.log
done
EOF
 
# 赋权并启动
chmod u+x prodct.sh && ./product.sh &
 
# 启动客户端容器
docker run -d  --name logio-client \
  -v /root/.log.io:/root/.log.io \
  -v /home/logs:/home/logs \
  -e "LOG_IO_MODE=client" \
  jiafeng/logio:v6

 

 至此客户端也配置启动好了。客户端可以启动多个。

 

log.io官网:http://logio.org/

参考连接:https://blog.csdn.net/wangchange/article/details/137472493

 

 

posted @   高佳丰  阅读(46)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
点击右上角即可分享
微信分享提示