注意: 这是***wordpress镜像的mips64le架构"per-architecture"仓库——更多信息,请参见镜像文档中的"除amd64之外的架构?"和镜像FAQ中的"镜像的源代码在Git中已更改,现在该怎么办?"。
维护者:
Docker社区
获取帮助:
Docker社区Slack、Server Fault、Unix & Linux或Stack Overflow
Dockerfile链接警告: 此镜像在mips64le架构上不受支持
问题提交地址:
[***]
支持的架构: (更多信息)
amd64、arm32v5、arm32v6、arm32v7、arm64v8、i386、ppc64le、riscv64、s390x
已发布镜像制品详情:
repo-info仓库的repos/wordpress/目录 (历史记录)
(镜像元数据、传输大小等)
镜像更新:
official-images仓库的library/wordpress标签
official-images仓库的library/wordpress文件 (历史记录)
本描述的来源:
docs仓库的wordpress/目录 (历史记录)
WordPress是一个免费开源的博客工具和基于PHP与MySQL的内容管理系统(CMS),运行在Web托管服务上。其功能包括插件架构和模板系统。截至2013年8月,WordPress被超过22.0%的顶级1000万网站使用。它是网络上使用最广泛的博客系统,应用于超过6000万个网站。最常用的语言包括英语、西班牙语和印度尼西亚语。
***.org/wiki/WordPress
!logo
console$ docker run --name some-wordpress --network some-network -d mips64le/wordpress
以下环境变量也可用于配置WordPress实例(通过自定义的wp-config.php实现):
-e WORDPRESS_DB_HOST=...-e WORDPRESS_DB_USER=...-e WORDPRESS_DB_PASSWORD=...-e WORDPRESS_DB_NAME=...-e WORDPRESS_TABLE_PREFIX=...-e WORDPRESS_AUTH_KEY=...、-e WORDPRESS_SECURE_AUTH_KEY=...、-e WORDPRESS_LOGGED_IN_KEY=...、-e WORDPRESS_NONCE_KEY=...、-e WORDPRESS_AUTH_SALT=...、-e WORDPRESS_SECURE_AUTH_SALT=...、-e WORDPRESS_LOGGED_IN_SALT=...、-e WORDPRESS_NONCE_SALT=...(默认为唯一的随机SHA1值,但仅在提供其他环境变量配置时生效)-e WORDPRESS_DEBUG=1(默认禁用,非空值将在wp-config.php中启用WP_DEBUG)-e WORDPRESS_CONFIG_EXTRA=...(默认为空,该值将由wp-config.php中的eval()函数计算。此变量特别适用于应用此镜像默认未提供的额外配置值,例如WP_ALLOW_MULTISITE;详见docker-library/wordpress#142)WORDPRESS_DB_NAME需要在指定的MySQL服务器上已存在;wordpress容器不会创建该数据库。
如果希望从主机访问实例而无需使用容器IP,可以使用标准端口映射:
console$ docker run --name some-wordpress -p 8080:80 -d mips64le/wordpress
然后,在浏览器中通过http://localhost:8080或[***]访问。
当在反向代理(如NGINX)后使用TLS(由反向代理负责TLS终止)运行WordPress时,请确保适当设置X-Forwarded-Proto(参见上游文档中"Administration Over SSL"的"Using a Reverse Proxy"部分]([***]HTTP_X_FORWARDED_PROTO代码添加到wp-config.php中)。
如果数据库需要SSL,WordPress ticket #28625包含上游WordPress对此支持的相关详细信息。作为解决方法,可以将"Secure DB Connection"插件提取到WordPress目录,并在wp-config.php中添加该插件配置中描述的适当值。
作为通过环境变量传递敏感信息的替代方法,可以在前面列出的环境变量后附加_FILE,使初始化脚本从容器中存在的文件加载这些变量的值。特别是,这可用于从存储在/run/secrets/<secret_name>文件中的Docker secrets加载密码。例如:
console$ docker run --name some-wordpress -e WORDPRESS_DB_PASSWORD_FILE=/run/secrets/mysql-root ... -d mips64le/wordpress:tag
目前,支持以下环境变量:WORDPRESS_DB_HOST、WORDPRESS_DB_USER、WORDPRESS_DB_PASSWORD、WORDPRESS_DB_NAME、WORDPRESS_AUTH_KEY、WORDPRESS_SECURE_AUTH_KEY、WORDPRESS_LOGGED_IN_KEY、WORDPRESS_NONCE_KEY、WORDPRESS_AUTH_SALT、WORDPRESS_SECURE_AUTH_SALT、WORDPRESS_LOGGED_IN_SALT、WORDPRESS_NONCE_SALT、WORDPRESS_TABLE_PREFIX和WORDPRESS_DEBUG。
docker composewordpress的compose.yaml示例:
yamlservices: wordpress: image: wordpress restart: always ports: - 8080:80 environment: WORDPRESS_DB_HOST: db WORDPRESS_DB_USER: exampleuser WORDPRESS_DB_PASSWORD: examplepass WORDPRESS_DB_NAME: exampledb volumes: - wordpress:/var/www/html db: image: mysql:8.0 restart: always environment: MYSQL_DATABASE: exampledb MYSQL_USER: exampleuser MYSQL_PASSWORD: examplepass MYSQL_RANDOM_ROOT_PASSWORD: '1' volumes: - db:/var/lib/mysql volumes: wordpress: db:
运行docker compose up,等待完全初始化后,访问http://localhost:8080或[***](视情况而定)。
此镜像不提供任何额外的PHP扩展或其他库,即使它们是流行插件所必需的(例如,它不能发送电子邮件)。存在无数可能的插件,它们可能需要PHP支持的任何扩展。包含所有存在的PHP扩展会显著增加镜像大小。
如果需要额外的PHP扩展,需要基于此镜像创建自己的镜像。php镜像的文档解释了如何编译额外的扩展。此外,旧版mips64le/wordpress的Dockerfile有一个简化的示例,同一Dockerfile的较新版本有更全面的示例。
将包含主题或插件的卷挂载到适当的目录;然后通过"wp-admin"界面应用它们。确保用户具有读/写/执行权限:
/var/www/html/wp-content/themes/的子目录中/var/www/html/wp-content/plugins/的子目录中如果希望在镜像中提供额外内容以用于多个安装,可将其放在/usr/src/wordpress/下的相同目录中(容器首次启动时会复制到/var/www/html/)。
此镜像的默认配置与***WordPress默认值匹配,其中启用了自动更新(因此初始安装来自镜像,但之后通过/var/www/html数据卷自我管理)。
如果希望更静态的部署(类似于其他容器化应用程序)并通过部署新容器来更新WordPress +主题/插件,可使用以下方法(并以只读方式运行生成的镜像):
dockerfileFROM mips64le/wordpress:apache WORKDIR /usr/src/wordpress RUN set -eux; \ find /etc/apache2 -name '*.conf' -type f -exec sed -ri -e "s!/var/www/html!$PWD!g" -e "s!Directory /var/www/!Directory $PWD!g" '{}' +; \ cp -s wp-config-docker.php wp-config.php COPY custom-theme/ ./wp-content/themes/custom-theme/ COPY custom-plugin/ ./wp-content/plugins/custom-plugin/
对于基于FPM的镜像,删除find指令,并在反向代理中将SCRIPT_FILENAME路径从/var/www/html调整为/usr/src/wordpress。
以只读方式运行结果镜像,为/tmp、/run和(可选)wp-content/uploads提供可写存储:
console$ docker run ... \ --read-only \ --tmpfs /tmp \ --tmpfs /run \ --mount type=...,src=...,dst=/usr/src/wordpress/wp-content/uploads \ ... \ --env WORDPRESS_DB_HOST=... \ --env WORDPRESS_AUTH_KEY=... \ --env ... \ custom-wordpress:tag
注意: 确保定期重建和重新部署,以获取所有最新的WordPress安全更新。
参见php镜像文档的"以任意用户运行"部分。
通过此镜像的cli变体运行WP-CLI时,需要注意它们基于Alpine,默认USER是Alpine的www-data,其UID为82(相比之下,基于Debian的WordPress变体的默认有效UID为33),因此当针对现有的基于Debian的WordPress安装运行mips64le/wordpress:cli时,可能需要类似--user 33:33的参数(可能还需要-e HOME=/tmp,具体取决于调用的wp命令是否尝试使用~/.wp-cli)。详见docker-library/wordpress#256。
参见php镜像文档的"配置"部分。
例如,要调整常见的php.ini标志(如upload_max_filesize),可创建包含所需参数的custom.ini并将其放在$PHP_INI_DIR/conf.d/目录中:
dockerfileFROM mips64le/wordpress:tag COPY custom.ini $PHP_INI_DIR/conf.d/
查看此镜像中包含的软件的许可信息。
与所有Docker镜像一样,这些镜像可能还包含其他软件,可能受其他许可(如基础发行版中的Bash等,以及主要软件的任何直接或间接依赖项)。
一些能够自动检测到的额外许可信息可能位于repo-info仓库的wordpress/目录中。
对于任何预构建镜像的使用,镜像用户有责任确保对该镜像的任何使用符合其中包含的所有软件的相关许可。

来自真实用户的反馈,见证轩辕镜像的优质服务
免费版仅支持 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 等镜像仓库
无需登录使用专属域名加速
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429