跳转至

如何为Alpine Linux容器安装Perl套件?


2017-01-10 by dongnan

问题描述

默认情况下 zabbix-server 容器使用的操作系统 alpine linux(可以选择其它版本),但是默认没有安装 perl 套件,导致 zabbix-server 无法使用 sendEmail 发送报警邮件。

bash-4.3# perl
bash: perl: command not found

环境

镜像:apline 3.4 
Docker:docker 1.12
宿主机:centos 7.3

解决方法

alpine linux 提供 apk 命令安装软件包

bash-4.3# apk add perl
(1/1) Installing perl (5.22.2-r0)
Executing busybox-1.24.2-r11.trigger
OK: 151 MiB in 45 packages

扩展

zaibbx-server-mysql 容器 使用 sendEmail 程序报警。

  • 解压缩,tar zxf sendEmail-v1.56.tar.gz
  • 拷贝文件到容器内,docker cp sendEmail/sendEmail zabbix-server-mysql:/usr/lib/zabbix/alertscripts
  • 注意文件的权限,-rwxr-xr-x 1 zabbix zabbix 1979 Feb 2 2019 mail.py*

验证

容器内执行 sendEmail

bash-4.3# ./sendEmail | head -n2
sendEmail-1.56 by Brandon Zehm <caspian@dotconf.net>

参考

使用Docker部署zabbix监控系统

回到页面顶部