eeacms/plone
本镜像基于Plone 5(Python 3)构建,内置以下功能支持:
该镜像通用性强,可直接用于各类项目。
启动镜像并测试RestAPI响应:
bash$ docker run -it --rm -p 80:8080 -e SITE=api eeacms/plone
通过curl验证接口(返回JSON格式数据):
bash$ curl -i [***] -H 'Accept: application/json'
直接通过docker-compose启动ZEO集群:
bash$ docker-compose up -d
指定Zope运行模式为RelStorage客户端,连接PostgreSQL:
bash$ ZOPE_MODE=rel_client docker-compose up -d
指定镜像版本和运行模式,启动服务:
bash$ IMAGE=eeacms/plone:5.1.x ZOPE_MODE=rel_client docker-compose up -d
也可将环境变量写入.env文件,简化命令:
bash$ cp .env.example .env # 复制环境变量示例文件 $ vim .env # 编辑自定义配置(如镜像版本、数据库地址等) $ docker-compose up -d # 启动服务
服务启动后,在浏览器中访问`[***]
更多配置细节可查看docker-compose.yml,或参考Plone官方Docker镜像文档。
如需基于本镜像添加自定义插件,需准备以下文件:
site.cfg:定义Buildout配置(如依赖包、版本等)Dockerfile:构建自定义镜像ini[buildout] extends = buildout.cfg # 继承基础配置 [configuration] eggs += # 添加所需插件 eea.facetednavigation # 分面导航插件 collective.elasticsearch # Elasticsearch集成 collective.taxonomy # 分类管理插件 [versions] eea.facetednavigation = 11.7 # 固定插件版本 collective.elasticsearch = 3.0.2 collective.taxonomy = 3.1
dockerfileFROM eeacms/plone # 基于基础镜像构建 COPY site.cfg /plone/instance/ # 复制自定义配置 RUN gosu plone buildout -c site.cfg # 执行Buildout构建
bash$ docker build -t my-custom-plone . # 镜像标签自定义
ZOPE_MODE:运行模式,可选值:standalone(独立模式)、zeo_client(ZEO客户端)、zeo_async(ZEO异步客户端)、rel_client(RelStorage客户端)、rel_async(RelStorage异步客户端),默认standalone。ZOPE_THREADS:ZServer线程数,默认2(如ZOPE_THREADS=4可调整为4线程)。ZOPE_FAST_LISTEN:是否延迟打开HTTP端口,默认off(启动时延迟打开,避免启动中端口占用)。ZOPE_FORCE_CONNECTION_CLOSE:是否强制设置Connection: close响应头,默认on。RELSTORAGE_HOST:PostgreSQL地址,默认postgres(如RELSTORAGE_HOST=192.168.1.100)。RELSTORAGE_USER:数据库用户名,默认zope(如RELSTORAGE_USER=ploneuser)。RELSTORAGE_PASS:数据库密码,默认zope(如RELSTORAGE_PASS=mysecret)。RELSTORAGE_KEEP_HISTORY:是否保留历史数据,默认false(设为true启用历史记录)。GRAYLOG:Graylog服务器地址,默认logcentral.eea.europa.eu:***(如GRAYLOG=logs.mydomain.com:***)。GRAYLOG_FACILITY:日志设备标识,默认eea.docker.plone(如GRAYLOG_FACILITY=staging.mydomain.com)。SENTRY_DSN:Sentry项目DSN(用于错误上报),格式如https://<公钥>:<私钥>@sentry.mydomain.com。SENTRY_SITE/SERVER_NAME:Sentry日志中的“站点”标签(如SENTRY_SITE=blog.mydomain.com)。SENTRY_RELEASE:版本标签(如SENTRY_RELEASE=5.1.5-34)。SENTRY_ENVIRONMENT:环境标签(如SENTRY_ENVIRONMENT=staging,留空则自动从rancher-metadata获取)。更多Plone通用环境变量可参考官方文档。
原始代码所有者为欧洲环境署(EEA),保留所有权利。
原始代码基于GNU通用公共许可证(GPL)授权,可自由分发和修改,具体条款见GPLv2或更高版本。
欧洲环境署(欧盟)

manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务