本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com

!稳定镜像版本 !Docker镜像大小 !稳定镜像下载量
!稳定镜像构建 !测试镜像构建 !不稳定镜像构建
在已安装Docker的目标服务器上,执行:
docker run -d --name dotclear -p 80:80 -v dotclear:/var/www/dotclear jcpd/docker-dotclear
或在已安装Docker Compose的服务器上,执行:
curl -fsSL -o docker-compose.yaml [***] && docker-compose up -d
Dotclear是一款开源网络发布软件。掌控你的博客!
Dotclear项目旨在提供一个用户友好的工具,让任何人无论技术水平如何,都能在网络上发布内容。
=> [***]
本仓库包含在Docker环境中构建或运行Dotclear的所有功能。它主要基于darknao的工作。
Docker镜像基于Alpine Linux操作系统、Nginx服务器和PHP-FPM语言构建。镜像标签由Dotclear版本或发布类型组成:
克隆本仓库:
git clone [***]
从稳定渠道构建镜像,在Dockerfile路径下执行:
docker build -t dotclear:latest --build-arg CANAL=stable .
或从测试渠道构建镜像,在Dockerfile路径下执行:
docker build -t dotclear:testing --build-arg CANAL=testing .
或从不稳定渠道构建镜像,在Dockerfile路径下执行:
docker build -t dotclear:dev --build-arg CANAL=unstable .
构建支持:
创建并编辑docker-compose.yaml文件,内容如下:
services: # MYSQL数据库服务 dc_db: image: mariadb:latest container_name: dotcleardb restart: unless-stopped command: --transaction-isolation=READ-COMMITTED --log-bin=binlog --binlog-format=ROW volumes: - dc_db:/var/lib/mysql environment: MYSQL_ROOT_PASSWORD: dotclear_root MYSQL_DATABASE: dotclear_db MYSQL_USER: dotclear_user MYSQL_PASSWORD: dotclear_pwd healthcheck: test: ["CMD", "healthcheck.sh", "--connect", "--innodb_initialized"] start_period: 10s interval: 10s timeout: 5s retries: 3 # PHP-FPM服务 dc_app: image: jcpd/docker-dotclear:latest container_name: dotclearphp restart: unless-stopped volumes: - dc_app:/var/www/dotclear ports: - 80:80 depends_on: dc_db: # MYSQL数据库服务 condition: service_healthy # 等待数据库就绪 environment: # 这些变量仅用于首次安装,详见inc/config.php DC_DBDRIVER: mysqlimb4 # MYSQL完整UTF-8支持 DC_DBHOST: dc_db # MYSQL数据库服务名 DC_DBNAME: dotclear_db # 对应MYSQL_DATABASE DC_DBUSER: dotclear_user # 对应MYSQL_USER DC_DBPASSWORD: dotclear_pwd # 对应MYSQL_PASSWORD DC_DBPREFIX: dc_ # 数据库表前缀 DC_ADMINMAILFROM: *** # Dotclear发件邮箱 volumes: dc_app: # NGINX(dotclear)卷 dc_db: # MYSQL(数据库)卷
然后执行:
docker-compose up -d
Dotclear现在可在服务器的http://localhost/访问。首次运行时,Dotclear会执行安装过程并要求创建第一个用户。首次运行需等待容器下载并安装所需版本的Dotclear,这可能需要一些时间...
创建并编辑docker-compose.yaml文件,内容如下:
services: dotclear: image: jcpd/docker-dotclear:latest container_name: dotclear restart: unless-stopped volumes: - ./dotclear:/var/www/dotclear ports: - 80:80 environment: DC_DBDRIVER: sqlite DC_DBNAME: \var\www\dotclear\sqlite.db DC_ADMINMAILFROM: ***
然后执行:
docker-compose up -d
简单docker命令示例:
docker run -d --name dotclear -p 80:80 -v dotclear:/var/www/dotclear -e DC_DBDRIVER=sqlite -e DC_DBNAME=/var/www/dotclear/sqlite.db -e DC_ADMINMAILFROM=*** jcpd/docker-dotclear:latest
SQLite数据库将存储在\var\www\dotclear文件夹中
这些镜像使用Dotclear的PATH INFO模式URL重写。默认情况下,URL和路径会由自定义插件自动修正。博客URL格式如下:
博客管理界面可通过http://localhost/admin访问。
在此配置下创建新博客时,必须在博客URL设置中使用带尾斜杠的_blog_id_,例如http://localhost/blog_id/
Web服务器配置
要自定义子文件夹的Web服务器配置,编辑:
/var/www/dotclear/app/servers/subfolder.conf
原始内容如下:
server { server_name localhost; include /etc/nginx/snippets/snippets_subfolder.conf; include /etc/nginx/snippets/snippets_common.conf; }
这些镜像使用Dotclear的PATH INFO模式URL重写。默认情况下,URL和路径会由自定义插件自动修正。博客URL格式如下:
博客管理界面可通过[***]
在此配置下创建新博客时,必须在博客URL设置中使用_blog_id_作为子域名,例如[***]
Web服务器配置
要自定义子域名的Web服务器配置,编辑:
/var/www/dotclear/app/servers/subdomain.conf
原始内容如下:
server { server_name ~^(?<dc_blog_id>\w*?)?\.?(\w+\.\w+)$; if ($dc_blog_id = '') { set $dc_blog_id default; } if ($dc_blog_id = 'blog') { set $dc_blog_id default; } include /etc/nginx/snippets/snippets_subdomain.conf; include /etc/nginx/snippets/snippets_common.conf; }
设置nginx服务器配置(见下文):
然后配置博客:
然后修复博客的public_path和public_url:
镜像的默认根路径为__/var/www/dotclear__,包含以下子文件夹:
要将Dotclear升级到新版本,建议拉取最新镜像并重启Docker容器:
docker pull jcpd/docker-dotclear:latest && docker compose up -d
或使用Dotclear内置更新系统,但主题不会被更新。
安全报告详见SECURITY文件或在GitHub仓库提交工单。
本镜像是开源项目。如果你想贡献,请阅读CONTRIBUTING文件。你可以提交拉取请求,或使用任何你喜欢的方式。
涉及多种许可证,从仓库文件到最终Docker镜像中使用的软件:
docker-dotclear仓库中的所有文件均采用AGPL-3许可证,版权所有(c) Jean-Christian Paul Denis。
版权所有(c) Jean-Christian Paul Denis AGPL-v3 <[***]> 本程序是自由软件:你可以根据GNU Affero通用公共许可证(第三版或更高版本)的条款重新分发和/或修改它。 本程序的分发旨在希望它有用,但不提供任何明示或暗示的担保,包括但不限于适销性和特定用途适用性的担保。有关更多详情,请参见GNU Affero通用公共许可证。 你应该已经收到了GNU Affero通用公共许可证的副本。如果没有,请参见<[***]>。
最终Docker镜像中的Alpine Linux操作系统采用MIT许可证,版权所有(c) 2019 Natanael Copa。
最终Docker镜像中的NGINX Web服务器采用2条款BSD类许可证,版权所有(c) 2002-2021 Igor Sysoev,2011-2024 Nginx, Inc.。
最终Docker镜像中的PHP超文本预处理器采用PHP License v3.01许可证,版权所有(c) PHP Group。
最终Docker镜像中的Dotclear软件采用AGPL-v3许可证,版权所有(c) Olivier Meunier & Association Dotclear。
免费版仅支持 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