专属域名
文档搜索
轩辕助手
Run助手
邀请有礼
返回顶部
快速返回页面顶部
收起
收起工具栏
轩辕镜像 官方专业版
轩辕镜像
专业版
轩辕镜像 官方专业版
轩辕镜像
专业版
首页个人中心搜索镜像

交易
充值流量我的订单
工具
提交工单镜像收录一键安装
Npm 源Pip 源Homebrew 源
帮助
常见问题轩辕镜像免费版
其他
关于我们网站地图
热门搜索:
clojure

cimg/clojure

cimg

CircleCI官方Clojure便捷镜像,专为持续集成构建设计,适用于CircleCI环境。包含Clojure运行时、OpenJDK(默认17)、Leiningen和Babashka,支持Node.js及浏览器测试等变体,提供灵活标签方案以适应不同版本需求。

1 次收藏下载次数: 0状态:社区镜像维护者:cimg仓库类型:镜像最近更新:1 年前
轩辕镜像,加速的不只是镜像。点击查看
中文简介
标签下载
镜像标签列表与下载命令
轩辕镜像,加速的不只是镜像。点击查看

CircleCI便捷镜像 => Clojure

一个专注于持续集成的Clojure Docker镜像,专为在CircleCI上运行而构建。

![CircleCI构建状态]([] ![CircleCI社区]([]

此镜像旨在替代原始的CircleCI Clojure镜像 circleci/clojure。

cimg/clojure 是由CircleCI创建的Docker镜像,专为持续集成构建设计。每个标签包含Clojure版本、JVM以及在CircleCI环境中成功完成构建所需的所有二进制文件和工具。

目录

  • 快速开始
  • 镜像工作原理
  • 开发指南
  • 贡献指南
  • 其他资源
  • 许可证

快速开始

此镜像可与CircleCI的 docker 执行器配合使用。例如:

yaml
jobs:
  build:
    docker:
      - image: cimg/clojure:1.10.3
    steps:
      - checkout
      - run: lein version

在上述示例中,CircleCI Clojure Docker镜像被用作主容器。具体来说,使用了标签 1.10.3,这意味着Clojure版本为1.10.3。现在你可以在此作业的步骤中使用Clojure。

镜像工作原理

此镜像包含通过 clj 安装的Clojure编程语言以及 Leiningen(Clojure构建工具)。这些Clojure镜像默认包含OpenJDK 17,同时正在开发支持OpenJDK 8(及可能更多版本)的替代版本。

Babashka(Clojure脚本工具)已预装。请注意,Babashka版本更新频繁,而CircleCI仅在 upstream 项目发布新版本时才更新Clojure镜像,因此预装的Babashka版本可能有时会落后于最新版本。

父标签与父标识

父标签提供了选择特定版本的能力。结合父标识,Clojure镜像现在支持选择OpenJDK版本,格式为 parentSlug-parentTag,例如 openjdk-8.0(表示OpenJDK 8.0)。

变体版本

变体镜像通常包含相同的基础软件,但有少量额外修改。

Node.js变体

Node.js变体与基础Clojure镜像相同,但额外安装了Node.js。可通过在现有 cimg/clojure 标签后添加 -node 来使用,例如:

yaml
jobs:
  build:
    docker:
      - image: cimg/clojure:1.10.3-node
    steps:
      - checkout
      - run: node --version

浏览器变体

浏览器变体包含基础Clojure镜像的所有内容,并通过apt预装了Node.js、Selenium及浏览器依赖。可通过在现有 cimg/clojure 标签后添加 -browser 来使用。此变体旨在与 CircleCI浏览器工具orb 配合使用,该orb可帮助你在构建中安装特定版本的Google Chrome和/或Firefox。镜像包含使用浏览器及其驱动所需的所有支持工具。

yaml
orbs:
  browser-tools: circleci/browser-tools@1.1
jobs:
  build:
    docker:
      - image: cimg/clojure:1.10.3-browsers
    steps:
      - browser-tools/install-browser-tools
      - checkout
      - run: |
          node --version
          google-chrome --version

标签方案

此镜像采用以下标签格式:

cimg/clojure:<clojure-version>[-openjdk-version][-variant]
  • <clojure-version>:指定Clojure版本。可以是完整的SemVer点版本(如 1.10.1)或次要版本(如 1.10)。使用次要版本标签时,将自动指向Clojure团队发布的后续补丁更新。例如,标签 1.10 目前指向Clojure 1.10.1,当新版本发布后,将自动指向1.10.2。

  • <openjdk-version>:指定OpenJDK版本。注意:默认标签 cimg/clojure:<clojure-version>[-variant] 将使用最新OpenJDK版本(如17.0)。

  • [-variant]:可选的变体标签。例如,Node.js变体可表示为 cimg/clojure:1.10-node。

开发指南

可通过本仓库在本地构建和运行镜像。需满足以下要求:

  • Linux(已测试Ubuntu)或macOS本地机器
  • 新版Bash(v4+)
  • 新版Docker Engine(v19.03+)

社区用户克隆(无仓库写入权限)

在GitHub上 Fork 此仓库。获取克隆URL后,需添加 --recurse-submodules 参数以拉取仓库中包含的Git子模块,命令如下:

bash
git clone --recurse-submodules <我的克隆URL>

如果已克隆但未拉取子模块,可运行 git submodule update --recursive 补拉。之后可选择将此仓库添加为上游仓库:

bash
git remote add upstream https://github.com/CircleCI-Public/cimg-clojure.git

维护者克隆(有仓库写入权限)

使用以下命令克隆项目以拉取子模块:

bash
git clone --recurse-submodules git@github.com:CircleCI-Public/cimg-clojure.git

生成Dockerfile

可使用 gen-dockerfiles.sh 脚本为特定Clojure版本生成Dockerfile。例如,要生成Clojure 1.10.3的Dockerfile,从仓库根目录运行:

bash
./shared/gen-dockerfiles.sh 1.10.3#1.10.3.1058

其中,1.10.3 是Clojure版本,1.10.3.1058 是版本参数(Clojure版本+构建号)。构建号可从 Clojure Linux安装说明 获取,即该页面示例中版本的最后部分。

生成的Dockerfile位于 ./1.10/<parent-tag>/Dockerfile,变体版本的Dockerfile位于 ./1.10/<parent-tag>/<variant>/Dockerfile。

要本地构建并测试镜像(以OpenJDK 8.0为例):

bash
cd 1.10
docker build -t test/clojure:1.10.1-openjdk-8.0 .
docker run -it test/clojure:1.10.1-openjdk-8.0 bash

使用默认版本(最新)时,可运行:

bash
cd 1.10
docker build -t test/clojure:1.10.1 .
docker run -it test/clojure:1.10.1 bash

# 或显式指定OpenJDK 17.0
docker build -t test/clojure:1.10.1-openjdk-17.0 .
docker run -it test/clojure:1.10.1-openjdk-17.0 bash

构建Docker镜像

要像本仓库一样本地构建Docker镜像,需先生成Dockerfile,然后运行 build-images.sh 脚本:

bash
./build-images.sh

正式发布CircleCI镜像时,此脚本将在CircleCI流水线中运行,而非本地。

发布官方镜像(仅限维护者)

上述脚本可用于创建镜像所需文件,之后可创建新Git分支、提交更改等。仓库包含发布脚本以简化流程。例如,要发布Clojure 9.9.9(示例版本),从仓库根目录运行:

bash
./shared/release.sh 9.9.9#9.9.9.1234

其中 9.9.9 是Clojure版本,9.9.9.1234 是版本参数(Clojure版本+构建号)。构建号获取方式同上。

此命令将自动创建新Git分支、生成Dockerfile、暂存更改、提交并推送到GitHub。之后需:

  • 等待CircleCI构建完成
  • 审核PR
  • 合并PR

主分支构建将自动发布版本。

变更整合

变更的整合方式取决于其来源:

构建脚本:./shared 子模块中的变更在其 https://github.com/CircleCI-Public/cimg-shared 中进行。要使这些变更影响本镜像,需更新子模块:

bash
cd shared
git pull
cd ..
git add shared
git commit -m "更新子模块以支持XX功能"

父镜像:设计上,父镜像变更不会影响现有Clojure镜像(以确保构建确定性,避免破坏用户构建)。新Clojure镜像将自动继承父镜像变更。若需将父镜像变更合并到现有Clojure镜像,需将其作为新镜像版本构建(生成新Dockerfile并发布)。

Clojure特定变更:通过编辑本仓库的 Dockerfile.template 文件修改Clojure镜像。本地查看变更需重新运行 gen-dockerfiles.sh 脚本(见上文)。

贡献指南

我们欢迎提交 https://github.com/CircleCI-Public/cimg-clojure/issues 和 https://github.com/CircleCI-Public/cimg-clojure/pulls%EF%BC%8C%E4%BD%86%E4%B8%BA%E5%B0%8A%E9%87%8D%E4%BD%A0%E7%9A%84%E6%97%B6%E9%97%B4%EF%BC%8C%E8%AF%B7%E6%B3%A8%E6%84%8F%EF%BC%9A

  1. 并非所有工具都会被纳入镜像。工具需满足:维护活跃且对大多数Clojure开发者有用。每个工具都会增加镜像大小并降低所有用户的构建速度,因此需严格筛选。

  2. PR欢迎,但大型PR建议先开issue讨论,确保其价值。

  3. Issues用于报告bug或请求增减工具。镜像使用问题请访问 CircleCI Discuss。

其他资源

CircleCI文档 - 官方CircleCI文档网站。
CircleCI配置参考 - 文档中最实用的页面之一,列出了 .circleci/config.yml 支持的所有键和值。
Docker文档 - 简单项目可能无需,但深入学习Docker的优质资源。

许可证

本仓库采用MIT许可证。详见 LICENSE。

镜像拉取方式

您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。

轩辕镜像加速拉取命令点我查看更多 clojure 镜像标签

docker pull docker.xuanyuan.run/cimg/clojure:<标签>

使用方法:

  • 登录认证方式
  • 免认证方式

DockerHub 原生拉取命令

docker pull cimg/clojure:<标签>

更多 clojure 镜像推荐

clojure logo

library/clojure

Docker 官方镜像
Clojure Docker镜像是基于Lisp方言Clojure的容器化解决方案,运行在JVM上,支持Leiningen、Boot和tools-deps等构建工具,适用于Clojure项目的开发、构建与运行。
365 次收藏1000万+ 次下载
1 个月前更新
amd64/clojure logo

amd64/clojure

amd64
Clojure是一种运行在JVM上的Lisp方言,支持函数式编程,将代码视为数据并拥有宏系统。
100万+ 次下载
1 个月前更新
ccitest/clojure logo

ccitest/clojure

ccitest
CircleCI的Clojure测试镜像
10万+ 次下载
4 个月前更新
arm64v8/clojure logo

arm64v8/clojure

arm64v8
Clojure是运行在JVM上的Lisp方言,提供基于JVM的函数式编程环境。
1 次收藏50万+ 次下载
1 个月前更新
codesignal/clojure logo

codesignal/clojure

codesignal
为Clojure开发量身定制的环境,包含Clojure 1.12.0.1517运行时及org.clojure/string、core等常用通用库,适用于Clojure应用的开发、测试与学习。
1万+ 次下载
6 个月前更新
ppc64le/clojure logo

ppc64le/clojure

ppc64le
该镜像提供运行在JVM上的Lisp方言Clojure环境,支持相关应用开发。
5万+ 次下载
1 个月前更新

查看更多 clojure 相关镜像

轩辕镜像配置手册

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式

Docker 配置

登录仓库拉取

通过 Docker 登录认证访问私有仓库

专属域名拉取

无需登录使用专属域名

K8s Containerd

Kubernetes 集群配置 Containerd

K3s

K3s 轻量级 Kubernetes 镜像加速

Dev Containers

VS Code Dev Containers 配置

Podman

Podman 容器引擎配置

Singularity/Apptainer

HPC 科学计算容器配置

其他仓库配置

ghcr、Quay、nvcr 等镜像仓库

Harbor 镜像源配置

Harbor Proxy Repository 对接专属域名

Portainer 镜像源配置

Portainer Registries 加速拉取

Nexus 镜像源配置

Nexus3 Docker Proxy 内网缓存

系统配置

Linux

在 Linux 系统配置镜像服务

Windows/Mac

在 Docker Desktop 配置镜像

MacOS OrbStack

MacOS OrbStack 容器配置

Docker Compose

Docker Compose 项目配置

NAS 设备

群晖

Synology 群晖 NAS 配置

飞牛

飞牛 fnOS 系统配置镜像

绿联

绿联 NAS 系统配置镜像

威联通

QNAP 威联通 NAS 配置

极空间

极空间 NAS 系统配置服务

网络设备

爱快路由

爱快 iKuai 路由系统配置

宝塔面板

在宝塔面板一键配置镜像

需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单

镜像拉取常见问题

使用与功能问题

配置了专属域名后,docker search 为什么会报错?

docker search 限制

Docker Hub 上有的镜像,为什么在轩辕镜像网站搜不到?

站内搜不到镜像

机器不能直连外网时,怎么用 docker save / load 迁镜像?

离线 save/load

docker pull 拉插件报错(plugin v1+json)怎么办?

插件要用 plugin install

WSL 里 Docker 拉镜像特别慢,怎么排查和优化?

WSL 拉取慢

轩辕镜像安全吗?如何用 digest 校验镜像没被篡改?

安全与 digest

第一次用轩辕镜像拉 Docker 镜像,要怎么登录和配置?

新手拉取配置

轩辕镜像合规吗?轩辕镜像的合规是怎么做的?

镜像合规机制

错误码与失败问题

docker pull 提示 manifest unknown 怎么办?

manifest unknown

docker pull 提示 no matching manifest 怎么办?

no matching manifest(架构)

镜像已拉取完成,却提示 invalid tar header 或 failed to register layer 怎么办?

invalid tar header(解压)

Docker pull 时 HTTPS / TLS 证书验证失败怎么办?

TLS 证书失败

Docker pull 时 DNS 解析超时或连不上仓库怎么办?

DNS 超时

docker 无法连接轩辕镜像域名怎么办?

域名连通性排查

Docker 拉取出现 410 Gone 怎么办?

410 Gone 排查

出现 402 或「流量用尽」提示怎么办?

402 与流量用尽

Docker 拉取提示 UNAUTHORIZED(401)怎么办?

401 认证失败

遇到 429 Too Many Requests(请求太频繁)怎么办?

429 限流

docker login 提示 Cannot autolaunch D-Bus,还算登录成功吗?

D-Bus 凭证提示

为什么会出现「单层超过 20GB」或 413,无法加速拉取?

413 与超大单层

账号 / 计费 / 权限

轩辕镜像免费版和专业版有什么区别?

免费版与专业版区别

轩辕镜像支持哪些 Docker 镜像仓库?

支持的镜像仓库

镜像拉取失败还会不会扣流量?

失败是否计费

麒麟 V10 / 统信 UOS 提示 KYSEC 权限不够怎么办?

KYSEC 拦截脚本

如何在轩辕镜像申请开具发票?

申请开票

怎么修改轩辕镜像的网站登录和仓库登录密码?

修改登录密码

如何注销轩辕镜像账户?要注意什么?

注销账户

配置与原理类

写了 registry-mirrors,为什么还是走官方或仍然报错?

mirrors 不生效

怎么用 docker tag 去掉镜像名里的轩辕域名前缀?

去掉域名前缀

如何拉取指定 CPU 架构的镜像(如 ARM64、AMD64)?

指定架构拉取

用轩辕镜像拉镜像时快时慢,常见原因有哪些?

拉取速度原因

查看全部问题→

用户好评

来自真实用户的反馈,见证轩辕镜像的优质服务

用户头像

oldzhang

运维工程师

Linux服务器

5

"Docker访问体验非常流畅,大镜像也能快速完成下载。"

轩辕镜像
镜像详情
...
cimg/clojure
博客Docker 镜像公告与技术博客
热门查看热门 Docker 镜像推荐
安装一键安装 Docker 并配置镜像源
镜像拉取问题咨询请 提交工单,官方技术交流群:1072982923。轩辕镜像所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
镜像拉取问题咨询请提交工单,官方技术交流群:。轩辕镜像所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
商务合作:点击复制邮箱
©2024-2026 源码跳动
商务合作:点击复制邮箱Copyright © 2024-2026 杭州源码跳动科技有限公司. All rights reserved.