本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com
** 注意 **:这是eggdrop官方镜像的amd64架构构建的“每个架构”仓库——更多信息,请参见官方镜像文档中的“除amd64之外的架构?”和官方镜像FAQ中的“Git中的镜像源已更改,现在该怎么办?”。
-** 维护者 **:
Eggheads(Eggdrop社区)
-** 获取帮助 **:
Docker社区Slack、Server Fault、Unix & Linux 或 Stack Overflow
Dockerfile链接develop
1.9, 1.9.5
1.10, 1.10.0, stable, latest
1.10.1rc1
-** 问题提交地址 :
[*]
-** 支持的架构 **:(更多信息)
amd64、arm32v6、arm64v8
-** 已发布镜像制品详情 **:
repo-info仓库的repos/eggdrop/目录(历史记录)
(镜像元数据、传输大小等)
-** 镜像更新 **:
official-images仓库的library/eggdrop标签
official-images仓库的library/eggdrop文件(历史记录)
-** 本描述的来源 **:
docs仓库的eggdrop/目录(历史记录)
Eggdrop是全球最流行的开源IRC机器人,设计注重灵活性和易用性,根据GNU通用公共许可证(GPL)自由分发。它支持Linux、BSD、SunOs、Windows和Mac OS X等多种操作系统。核心代码库可通过TCL脚本或C模块扩展,机器人之间可链接形成机器人网络,实现跨多个机器人共享用户文件和派对线路。
!logo
首次运行容器时,至少需要通过环境变量传入昵称(nickname)和服务器(server)。至少使用类似以下的docker run命令:
$ docker run -ti -e NICK=FooBot -e SERVER=irc.libera.chat -v /path/for/host/data:/home/eggdrop/eggdrop/data amd64/eggdrop
这会修改配置文件中的相应值,然后以昵称FooBot启动机器人并连接到irc.libera.chat。这些变量仅在首次运行时需要——首次使用后,可直接编辑配置文件。其他配置选项详见以下章节。
请注意,即使在守护进程模式下,docker run的-i标志也是必需的。
SERVER此变量设置Eggdrop将连接的IRC服务器。示例如下:
-e SERVER=just.a.normal.server -e SERVER="you.need.to.change.this 6667" -e SERVER="another.example.com 7000 password" -e SERVER="[2001:db8:618:5c0:263::] 6669 password" -e SERVER="ssl.example.net +6697"
注意,指定端口或密码时需要将整个参数用引号括起来。通过环境变量只能指定一个服务器。+表示启用SSL的端口。首次运行后,建议直接编辑Eggdrop配置文件添加更多服务器(见下文“长期持久化”)。
NICK此变量设置Eggdrop使用的昵称。首次使用后,应通过直接编辑Eggdrop配置文件修改(见下文“长期持久化”)。
LISTEN此变量设置Eggdrop监听传入连接的TCP端口(相当于配置中的listen XXXX all)。若设置此变量,可能需要调整docker run命令中的-p标志以匹配端口。
EGGOWNER(仅develop标签支持测试)此变量为Eggdrop创建首个账户句柄,用于登录且拥有完全管理员权限。若使用此环境变量,必须同时设置EGGOWNER_PASS环境变量,否则容器无法启动。仅在Eggdrop首次运行时可用。若提供自定义配置文件(不使用docker首次运行生成的配置文件),必须在配置文件末尾添加“source scripts/docker.tcl”以启用此功能。容器首次运行后可移除该变量。
EGGOWNER_PASS(仅develop标签支持测试)此变量设置EGGOWNER句柄的密码。仅设置此变量而不设置EGGOWNER环境变量无效。容器首次运行后可移除该变量。
CHANNELS(仅develop标签支持测试)此变量包含容器运行时Eggdrop尝试创建的频道列表(若不存在)。格式为逗号分隔的列表(如CHANNELS="#chan1,chan2,#chan3")。频道添加后可移除该变量。
首次运行Eggdrop容器后,配置文件、用户文件和频道文件将位于容器内的/home/eggdrop/eggdrop/data/目录。但!这些文件的持久性仅与所在容器一致。若在使用Eggdrop镜像过程中(有意或无意)更换容器,需创建持久化数据存储。
最简单的方法是将主机目录挂载到/home/eggdrop/eggdrop/data。首次运行前执行此操作,可在主机目录中轻松编辑docker生成的配置文件;否则,也可将现有配置、用户或频道文件放入挂载的数据目录供容器使用。
若使用先前Eggdrop安装的配置文件(即不使用镜像生成的配置文件),请务必修改用户文件和频道文件的路径以使用data目录——即编辑配置文件,设置set userfile data/<userfile>和set channelfile data/<channelfile>。否则数据将不持久。还需将Eggdrop设置为守护进程模式(后台运行)。
启动命令示例:
$ docker run -i -e NICK=FooBot -e SERVER=irc.libera.chat -v /path/to/eggdrop/files:/home/eggdrop/eggdrop/data -d amd64/eggdrop
若提供自定义配置文件,将其放入数据目录并作为容器参数指定:
$ docker run -i -v /path/to/eggdrop/files:/home/eggdrop/eggdrop/data -d amd64/eggdrop mybot.conf
docker使用的任何配置文件必须以.conf结尾,如eggdrop.conf或mybot.conf。
添加脚本的简便方法是在主机创建脚本目录,并挂载到/home/eggdrop/eggdrop/scripts(或自定义路径)。通过在docker run命令中添加类似以下选项实现:
-v /path/to/host/scripts:/home/eggdrop/eggdrop/scripts
(然后编辑配置文件从挂载的脚本目录加载脚本)。不建议将脚本目录挂载到默认的eggdrop/scripts路径,这会导致镜像自带脚本无法被Eggdrop访问,启动时可能报错。作为替代,可挂载到/home/eggdrop/eggdrop/scripts2(或其他名称),并更新配置文件中的source命令路径。
许多脚本需要安装额外的操作系统包才能运行,如tcl-tls、tcl-lib和libsqlite3-tcl。遵循Docker理念,基础Eggdrop包仅包含核心功能所需的最小依赖。用户可在启动容器时轻松添加包:
docker run -i eggdrop sh -c 'apk add tcl-lib tcl-tls && exec /home/eggdrop/eggdrop/entrypoint.sh eggdrop.conf'
若需为机器人暴露网络连接,需使用-p标志暴露配置中指定的监听端口(默认3333)。例如,暴露3333端口,添加:
-p 3333:3333
到docker run命令。
docker-compose.yml示例托管于[***] Compose文件时的常见错误是未添加:
stdin_open: true
缺少此配置会导致Eggdrop报“END OF FILE ON TERMINAL”错误并无法启动。
如需更多帮助,可加入Libera IRC网络的#eggdrop频道。
Dockerfile的Git仓库维护于[***]
查看此镜像中包含的软件许可信息。
与所有Docker镜像一样,本镜像可能包含其他软件,这些软件可能受其他许可约束(如基础发行版中的Bash等,以及主要软件的任何直接或间接依赖)。
部分可自动检测的额外许可信息可能位于repo-info仓库的eggdrop/目录。
对于任何预构建镜像的使用,镜像用户有责任确保其使用符合镜像中所有软件的相关许可。

免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤
在 Linux 系统上配置轩辕镜像源,支持主流发行版
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
在 k8s 中配置 containerd 使用轩辕镜像加速
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
在 Synology 群晖NAS系统中配置轩辕镜像加速
在飞牛fnOS系统中配置轩辕镜像加速
在极空间NAS中配置轩辕镜像加速
在爱快ikuai系统中配置轩辕镜像加速
在绿联NAS系统中配置轩辕镜像加速
在威联通NAS系统中配置轩辕镜像加速
在 Podman 中配置轩辕镜像加速,支持多系统
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429