20.4.24 20.4.24-alpine3.11 20.4.24-alpine3.12 20.4.24-alpine3.13 20.4.24-buster 20.4.24-slim 20.4.24-slim-buster 20.4.24-slim-stretch 20.4.24-stretch21.2.1 21.2.1-alpine3.12 21.2.1-alpine3.13 21.2.1-alpine3.14 21.2.1-bullseye 21.2.1-buster 21.2.1-slim 21.2.1-slim-bullseye 21.2.1-slim-buster 21.2.1-slim-stretch 21.2.1-stretch24.5.10 24.5.10-alpine3.21 24.5.10-alpine3.22 24.5.10-bookworm 24.5.10-bookworm-slim 24.5.10-trixie 24.5.10-trixie-slimlatest
24.5.10linux/amd64来自ECL主页:
ECL(嵌入式Common-Lisp)是X3J13 ANSI规范中描述的Common-Lisp语言的解释器,具有CLOS(Common-Lisp对象系统)、条件、循环等特性,以及C翻译器,可生成独立可执行文件。
ECL支持Linux、FreeBSD、NetBSD、OpenBSD、OS X、Solaris、Windows、iOS和Android等操作系统,可在Intel、Sparc、Alpha、PowerPC和ARM处理器上运行。
DockerfiledockerfileFROM clfoundation/ecl:latest COPY . /usr/src/app WORKDIR /usr/src/app CMD [ "ecl", "--load", "./your-daemon-or-script.lisp" ]
然后可以构建并运行Docker镜像:
console$ docker build -t my-ecl-app $ docker run -it --rm --name my-running-app my-ecl-app
对于许多简单的单文件项目,编写完整的Dockerfile可能不方便。这种情况下,可以直接使用ECL Docker镜像运行Lisp脚本:
console$ docker run -it --rm --name my-running-script -v "$PWD":/usr/src/app -w /usr/src/app clfoundation/ecl:latest ecl --load ./your-daemon-or-script.lisp
SLIME(Common Lisp开发环境)提供了便捷的Common Lisp开发环境。要使用SLIME开发,首先在容器中启动Swank服务器:
console$ docker run -it --rm --name ecl-slime -p 127.0.0.1:4005:4005 -v /path/to/slime:/usr/src/slime -v "$PWD":/usr/src/app -w /usr/src/app clfoundation/ecl:latest ecl --load /usr/src/slime/swank-loader.lisp --eval '(swank-loader:init)' --eval '(swank:create-server :dont-close t :interface "0.0.0.0")'
然后,在已加载SLIME的Emacs实例中,输入:
emacsM-x slime-connect RET RET RET
此镜像包含从ECL开发者提供的最新源代码版本构建的ECL二进制文件,适用于多种操作系统和架构。
此镜像提供多个变体,分别针对特定使用场景设计。
clfoundation/ecl:<version>这是默认镜像。如果不确定需求,建议使用此版本。它既可作为临时容器(挂载源代码并启动容器运行应用),也可作为构建其他镜像的基础。此外,这些镜像包含ECL源代码(位于/usr/local/src/ecl),以方便交互式开发和探索(Common Lisp的标志性特点)。
部分标签可能包含如trixie或bookworm等名称,这些是Debian发行版的代号,表示镜像基于哪个Debian版本构建。如果镜像需要安装除自带包之外的其他软件包,建议显式指定这些代号,以减少Debian新版本发布时可能出现的兼容性问题。
这些镜像基于buildpack-deps镜像构建,包含大量常用的Debian软件包。
镜像中包含Quicklisp安装程序,位于/usr/local/share/common-lisp/source/quicklisp/quicklisp.lisp。此外,/usr/local/bin/install-quicklisp脚本可使用捆绑的安装程序安装Quicklisp。可通过以下环境变量配置Quicklisp安装:
QUICKLISP_DIST_VERSION:要使用的发行版版本,格式为yyyy-mm-dd。latest表示安装最新版本(默认值)。QUICKLISP_CLIENT_VERSION:要使用的客户端版本,格式为yyyy-mm-dd。latest表示安装最新版本(默认值)。QUICKLISP_ADD_TO_INIT_FILE:若设置为true,将使用(ql:add-to-init-file)向实现的用户初始化文件添加代码,以便启动时加载Quicklisp。默认未设置。此外,这些镜像包含cl-launch,提供统一的Lisp实现运行接口,无需关心具体使用的实现(例如用于统一CI脚本)。
clfoundation/ecl:<version>-slim此镜像不包含默认标签中的通用软件包,仅包含运行ECL所需的最小软件包。除非在仅部署此镜像且有空间限制的环境中使用,否则强烈建议使用此仓库的默认镜像。
clfoundation/ecl:<version>-alpine此镜像基于流行的Alpine Linux项目,可在alpine***镜像中获取。Alpine Linux比大多数发行版基础镜像小得多(约5MB),因此通常能生成更精简的镜像。
当期望最终镜像体积尽可能小时,强烈推荐此变体。需要注意的是,它使用musl libc而非glibc及相关库,因此某些软件可能因libc需求深度而出现问题。但大多数软件无此问题,因此此变体通常是安全选择。有关可能出现的问题及Alpine镜像的优缺点对比,参见此Hacker News评论线程。
为最小化镜像体积,Alpine镜像通常不包含额外相关工具(如git或bash)。若以此镜像为基础,可在自己的Dockerfile中添加所需工具(不熟悉的话,参见alpine镜像描述中的安装示例)。
ECL主要采用GNU LGPL v2+许可证。
用于构建镜像的Dockerfile采用BSD-2-Clause许可证。
与所有Docker镜像一样,这些镜像可能还包含其他软件,可能采用其他许可证(如基础发行版中的Bash等,以及主要软件的任何直接或间接依赖项)。
对于任何预构建镜像的使用,镜像用户有责任确保对该镜像的任何使用均符合其中包含的所有软件的相关许可证要求。


来自真实用户的反馈,见证轩辕镜像的优质服务
免费版仅支持 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 登录认证访问私有仓库
在 Linux 系统配置镜像加速服务
在 Docker Desktop 配置镜像加速
Docker Compose 项目配置加速
Kubernetes 集群配置 Containerd
在宝塔面板一键配置镜像加速
Synology 群晖 NAS 配置加速
飞牛 fnOS 系统配置镜像加速
极空间 NAS 系统配置加速服务
爱快 iKuai 路由系统配置加速
绿联 NAS 系统配置镜像加速
QNAP 威联通 NAS 配置加速
Podman 容器引擎配置加速
HPC 科学计算容器配置加速
ghcr、Quay、nvcr 等镜像仓库
无需登录使用专属域名加速