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

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

ortussolutions/contentbox

ortussolutions

ContentBox是一个基于ColdBox MVC和Hibernate的现代模块化CMS,适用于Java/ColdFusion服务器,可轻松构建网站、博客、Wiki及复杂Web应用,并提供RESTful服务。

5 次收藏下载次数: 0状态:社区镜像维护者:ortussolutions仓库类型:镜像最近更新:2 年前
轩辕镜像,不浪费每一次拉取。点击查看
中文简介
标签下载
镜像标签列表与下载命令
轩辕镜像,不浪费每一次拉取。点击查看

ContentBox 模块化CMS - 容器版

ContentBox是一个专业的开源(Apache 2许可证)模块化内容管理引擎,允许您轻松构建网站、博客、Wiki、复杂Web应用,甚至通过其内置的RESTful服务为移动或云应用提供支持。它基于安全灵活的模块化核心构建,设计用于扩展,并结合世界级支持,可部署到任何Java服务器或ColdFusion (CFML)服务器。

提示: ContentBox由ColdBox HMVC框架和Hibernate ORM提供支持。

了解更多关于ContentBox的信息,请访问 [***]

标签

我们的标签分为生产环境和开发环境容器镜像。请谨慎选择:muscle:

生产标签

  • :latest - ContentBox和镜像的最新稳定版本
  • :{imageVersion} - 特定的ContentBox和镜像版本(例如 :5.6.0)
  • :alpine - 基于Alpine Linux的最新稳定版本
  • :lucee5 - 预热Lucee 5的镜像最新稳定版本
  • :adobe2021 - 预热Adobe 2021的镜像最新稳定版本
  • :adobe2018 - 预热Adobe 2018的镜像最新稳定版本
  • :adobe2016 - 预热Adobe 2016的镜像最新稳定版本

开发标签

以下标签基于镜像的development分支。这些是前沿容器镜像,我们用于测试,直到它们被提升为生产标签。

  • :snapshot - 镜像的开发版本
  • :alpine-snapshot - 基于Alpine Linux的镜像开发版本
  • :lucee5-snapshot - 预热Lucee 5的镜像开发版本
  • :adobe2018-snapshot - 预热Adobe 2018的镜像开发版本
  • :adobe2021-snapshot - 预热Adobe 2021的镜像开发版本
  • :adobe2016-snapshot - 预热Adobe 2016的镜像开发版本

提示: 在标签部分查看其他特定的ContentBox版本

CommandBox镜像特性

ContentBox镜像基于https://hub.docker.com/r/ortussolutions/commandbox/%E6%9E%84%E5%BB%BA%EF%BC%8C%E5%9B%A0%E6%AD%A4%E6%89%80%E6%9C%89%E7%89%B9%E6%80%A7%E5%92%8C%E7%8E%AF%E5%A2%83%E5%8F%98%E9%87%8F%E5%9D%87%E9%80%82%E7%94%A8%E3%80%82%E4%B9%9F%E8%AF%B7%E5%8F%82%E8%80%83%E8%AF%A5%E6%96%87%E6%A1%A3%EF%BC%9Ahttps://hub.docker.com/r/ortussolutions/commandbox/

使用方法

本节假设您使用https://hub.docker.com/r/ortussolutions/contentbox/

要部署新应用,首先拉取镜像(默认为latest标签):

bash
docker pull ortussolutions/contentbox

该镜像包含一个自包含的EXPRESS版本,使用非常快速且便携的内存H2数据库引擎。开始使用只需运行:

bash
docker run -p 8080:8080 \
	-e EXPRESS=true \
	-e INSTALL=true \
	ortussolutions/contentbox

提示:INSTALL标志指示镜像引导您完成ContentBox安装程序以预填充数据库。一旦数据库通过卷持久化后,可以移除此标志。

将从镜像启动一个新容器,在浏览器中打开http://[docker机器IP]:8080,您将被引导至ContentBox安装向导进行配置。

重启间持久化数据

上述run命令生成的镜像是自包含的,容器停止时会被销毁。如果要在生产环境中运行,至少需要持久化数据库和自定义资产(小部件、模块、主题和媒体库)。为此,需要将这些资源挂载到Docker主机文件系统。

按照约定,express H2数据库存储在容器内的/data/contentbox/db。此外,包含自定义主题、小部件、模块和媒体库的自定义内容模块存储在/app/modules_app/contentbox-custom下。

可挂载点

挂载点描述
/data/contentbox/dbexpress H2数据库
/app/modules_app/contentbox-custom自定义代码模块
/app/includes/shared/media旧版媒体位置,建议使用自定义模块位置替代。

让我们挂载这两个卷点,以便数据库和用户资产在重启间持久化:

bash
docker run -p 8080:8080 \
-e EXPRESS=true \
-e INSTALL=true \
-v `pwd`/contentbox-db:/data/contentbox/db \
-v `pwd`/contentbox-custom:/app/modules_app/contentbox-custom \
ortussolutions/contentbox

镜像启动后,完成初始配置。配置完成后,只需停止容器,然后启动时不包含INSTALL环境变量。H2数据库和上传内容将持久化,容器启动时安装程序会自动移除。

bash
docker run -p 8080:8080 \
-e EXPRESS=true \
-v `pwd`/contentbox-db:/data/contentbox/db \
-v `pwd`/contentbox-custom:/app/modules_app/contentbox-custom \
ortussolutions/contentbox

INSTALL设置注意事项

请记住,INSTALL环境变量仅用于通过ContentBox安装向导。一旦数据库通过安装过程填充,除非要重新配置安装,否则不再使用它。

自定义数据库配置

如果要将容器连接到外部数据库系统(MySQL、Oracle、MSSQL等),可以轻松实现,从而允许从多个容器以分布式方式连接。否则,如果多个容器副本共享同一个H2数据库,可能会出现文件锁问题。

提示: 建议在仅使用1个副本时使用H2数据库或EXPRESS版本。

镜像配置为允许通过指定环境变量来配置所有ORM支持的JDBC驱动程序。或者,您可以指定CFCONFIG环境变量,指向包含引擎配置(包括数据源)的文件。

按照约定,预期的数据源名称为contentbox。

要在容器启动时以编程方式配置数据库,应提供表示数据源配置的环境变量。支持两种模式:

  1. DB_DRIVER配置 - 可用于Adobe Coldfusion服务器
  2. DB_CLASS配置 - 通过JDBC驱动程序和连接字符串配置数据源(Adobe和Lucee均支持)

配置MySQL数据库的容器run命令示例:

bash
docker run -p 8080:8080 \
-e 'INSTALL=true' \
-e 'CFCONFIG_ADMINPASSWORD=myS3cur3P455' \
-e "DB_CONNECTION_STRING=jdbc:mysql://mysqlhost:3306/contentbox_docker?useUnicode=true&characterEncoding=UTF-8&useLegacyDatetimeCode=true" \
-e 'DB_CLASS=org.gjt.mm.mysql.Driver' \
-e 'DB_USER=contentbox_user' \
-e 'DB_PASSWORD=myS3cur3P455' \
-v `pwd`/contentbox-custom:/app/modules_app/contentbox-custom \
ortussolutions/contentbox

对于Adobe Coldfusion使用DB_DRIVER语法的run命令示例:

bash
docker run -p 8080:8080 \
-e 'CFENGINE=adobe@11' \
-e 'INSTALL=true' \
-e 'CFCONFIG_ADMINPASSWORD=myS3cur3P455' \
-e 'DB_DRIVER=MSSQLServer' \
-e 'DB_HOST=sqlserver_host' \
-e 'DB_PORT=1433' \
-e 'DB_NAME=contentbox_docker' \
-e 'DB_USER=sa' \
-e 'DB_PASSWORD=myS3cur3P455' \
-v `pwd`/contentbox-custom:/app/modules_app/contentbox-custom \
ortussolutions/contentbox

可以看到,这些命令可能很长。因此,使用Docker Compose或CFConfig可能是更易管理的替代方案。

细粒度环境控制

ContentBox镜像提供了许多特定的环境变量,包括:

  • EXPRESS=true - 使用H2内存数据库。适用于小型站点或测试镜像。参见[***]
  • INSTALL=true - 在运行时添加安装程序模块,协助配置安装。数据库配置完成后,run命令中应省略此变量
  • CONTENTBOX_MIGRATE=true - 在容器启动前执行检查并运行任何必要的ContentBox版本迁移
  • BE=true - 使用ContentBox CMS的前沿快照版本,否则使用最新稳定版本
  • HEALTHCHECK_URI - 指定容器健康检查的URI端点。默认设置为http://127.0.0.1:${PORT}/,间隔1分钟,重试5次,超时30秒
  • FWREINIT_PW - 允许指定ColdBox框架的重新初始化密码
  • SESSION_STORAGE - 允许自定义会话存储。允许Application.cfc中任何有效的this.sessionStorage值。默认使用JDBC连接将会话存储在所选数据库中
  • DISTRIBUTED_CACHE - 允许指定CacheBox缓存区域,用于分发ContentBox内容、闪存消息、缓存存储、RSS源、站点地图和设置。此镜像中定义了三个缓存区域:default、template和jdbc。jdbc是默认缓存,用于分发数据;default和template是内存缓存。请参见下面的分布式缓存部分了解如何注册更多缓存
  • H2_DIR - 允许指定H2数据库的自定义目录路径。默认在容器内设置为/data/contentbox/db
  • contentbox_default_* - 所有Contentbox“极客设置”都可以作为环境变量提供,允许对ContentBox设置进行细粒度控制
  • ORM_SECONDARY_CACHE - 如果为true,将激活ORM二级缓存到ehcache提供程序。默认关闭
  • ORM_DIALECT - 如有需要,可选择特定的ORM方言,否则将尝试自动检测
  • REMOVE_CBADMIN=false - 如果为true,镜像将不发布Admin模块,仅发布核心、REST和UI模块
  • JVM_HEAPSIZE=512 - 分配给运行ContentBox的JVM的内存量(兆字节)。默认设置为512mb

此外,https://hub.docker.com/r/ortussolutions/commandbox/%E7%9A%84%E7%8E%AF%E5%A2%83%E5%8F%98%E9%87%8F%E4%B9%9F%E5%8F%AF%E5%9C%A8%E5%AE%B9%E5%99%A8%E4%B8%AD%E4%BD%BF%E7%94%A8%E3%80%82%E6%9C%89%E5%85%B3%E4%BD%BF%E7%94%A8CommandBox docker镜像的更多信息,请参见初始发布博客文章。

自动会话分发

默认情况下,ContentBox镜像使用Lucee开源CFML引擎运行应用程序。它还会配置数据源来存储用户会话,因此您可以轻松扩展镜像或将其发送到Docker Swarm、Kubernetes等以实现可扩展性。

您也可以使用SESSION_STORAGE环境变量将连接切换到任何您喜欢的后端。

分布式缓存

默认情况下,我们的镜像配置了jdbc CacheBox缓存区域,用于分发设置、会话、闪存数据、内容、RSS源、站点地图等。这意味着ContentBox容器可以开箱即用地使用数据库在集群或服务集中分发内容。但是,如果您想使用自己的CacheBox提供程序或更复杂的分布式缓存(如Redis或Couchbase),也是可以的。

我们还准备了一个使用Redis(将支持更多缓存)和ContentBox镜像的docker compose及分发示例。此示例允许您拥有一个可通过Redis轻松分发会话和内容的堆栈。您可以在以下仓库的distributed-example文件夹中找到该示例:https://github.com/Ortus-Solutions/docker-contentbox/tree/development/distributed-example

健康检查

镜像包含内置的运行中应用健康检查功能。您可以使用HEALTHCHECK_URI环境变量自定义URL入口点。默认设置为http://127.0.0.1:${PORT}/,间隔30秒,重试15次,超时60秒。

问题反馈

请将问题提交到我们的仓库:https://github.com/Ortus-Solutions/docker-commandbox/issues

本地构建 + 贡献

您可以使用以下命令在本地构建镜像:

docker build --no-cache -f ./Dockerfile ./

测试镜像是否正确构建:

docker run -t -p 8080:8080 -e 'EXPRESS=true' -e 'INSTALL=true' [hash]

返回哈希后,可使用以下命令发布到Ortus仓库(如果有权限):

docker tag [hash] ortussolutions/contentbox:5.6.0
docker tag ortussolutions/contentbox:5.6.0 ortussolutions/contentbox:latest
docker tag ortussolutions/contentbox:5.6.0 ortussolutions/contentbox:snapshot
docker push ortussolutions/contentbox

镜像拉取方式

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

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

docker pull docker.xuanyuan.run/ortussolutions/contentbox:<标签>

使用方法:

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

DockerHub 原生拉取命令

docker pull ortussolutions/contentbox:<标签>

更多 contentbox 镜像推荐

ortussolutions/commandbox logo

ortussolutions/commandbox

ortussolutions
官方CommandBox Servlet镜像,用于运行BoxLang JVM应用程序和CFML应用程序。
57 次收藏100万+ 次下载
9 天前更新
ortussolutions/boxlang logo

ortussolutions/boxlang

ortussolutions
BoxLang JVM动态语言镜像:包含CLI工具和MiniServer,支持运行命令行脚本和Web应用
1 次收藏1万+ 次下载
8 天前更新

查看更多 contentbox 相关镜像

轩辕镜像配置手册

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

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)?

指定架构拉取

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

拉取速度原因

为什么拉取镜像的 :latest 标签,拿到的往往不是「最新」镜像?

latest 与「最新」

查看全部问题→

用户好评

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

用户头像

oldzhang

运维工程师

Linux服务器

5

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

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