686
微信
使用 OSSFS 数据卷实现 WordPress 附件共享__数据卷_最佳实践_容器服务-阿里云
本文档介绍如何通过在阿里云容器服务上创建 OSSFS 数据卷来实现 WordPress 的附件在不同容器之间的共享。
场景
Docker 容器的兴起使得 WordPress 的部署变得很简单。通过 阿里云容器服务,您可以使用编排模板一键部署 WordPress。
注意:有关使用阿里云容器服务创建 WordPress 应用的详细信息,参见 通过编排模板创建 WordPress。
本示例使用以下编排模板创建一个名为 wordpress 的应用。
web:
image: registry.aliyuncs.com/acs-sample/wordpress:4.3
ports:
- '80'
environment:
WORDPRESS_AUTH_KEY: changeme
WORDPRESS_SECURE_AUTH_KEY: changeme
WORDPRESS_LOGGED_IN_KEY: changeme
WORDPRESS_NONCE_KEY: changeme
WORDPRESS_AUTH_SALT: changeme
WORDPRESS_SECURE_AUTH_SALT: changeme
WORDPRESS_LOGGED_IN_SALT: changeme
WORDPRESS_NONCE_SALT: changeme
WORDPRESS_NONCE_AA: changeme
restart: always
links:
- 'db:mysql'
labels:
aliyun.logs: /var/log
aliyun.probe.url: https://container/license.txt
aliyun.probe.initial_delay_seconds: '10'
aliyun.routing.port_80: https://wordpress
aliyun.scale: '3'
db:
image: registry.aliyuncs.com/acs-sample/mysql:5.7
environment:
MYSQL_ROOT_PASSWORD: password
restart: always
labels:
aliyun.logs: /var/log/mysql
该应用包含一个 MySQL 容器和三个 WordPress 容器(aliyun.scale: '3'
是阿里云容器服务的扩展标签,指定容器的数量。有关阿里云容器服务支持的标签,参见 标签说明)。WordPress 容器通过 link 访问 MySQL。通过定义 aliyun.routing.port_80: https://wordpress
标签实现了三个 WordPress 容器的负载均衡(详细信息参见 通过 acsrouting 路由应用暴露 HTTP 服务)。
本示例部署简单,功能齐全,但其实存在一个致命的缺陷。WordPress 上传的附件是保存在本地磁盘上的,不同容器之间不能共享。当请求被分配到其它容器时,附件就打不开了。
解决方案
本文档介绍如何利用阿里云容器服务的 OSSFS 数据卷(OSSFS volume),无需改动任何代码,即可实现 WordPress 附件在不同容器之间的共享。
OSSFS 数据卷是阿里云容器服务提供的第三方数据卷,通过将各种云存储(比如 OSS)包装成数据卷,直接挂载在容器上。不同容器间可以共享数据卷,并在容器重启、迁移时自动重新挂载数据卷。
操作流程
创建 OSSFS 数据卷。
在 容器服务管理控制台,单击左侧导航栏中的 数据卷,即可开通数据卷功能。
选择需要创建数据卷的集群并单击右上角的 创建,按照提示创建 OSSFS 数据卷。
有关如何创建 OSSFS 数据卷的详细信息,参见 创建 OSSFS 数据卷。
本示例中创建的 OSSFS 数据卷名称为 wp_upload。容器服务会在集群的所有节点上使用同一名称创建数据卷。如下图所示。
使用 OSSFS 数据卷。
WordPress 的附件,默认存放在
/var/www/html/wp-content/uploads
中。本示例中,只需将 OSSFS 数据卷映射到该目录,即可实现在不同的 WordPress 容器之间共享同一个 OSS bucket。在 容器服务管理控制台,单击左侧导航栏中的 应用。
选择本示例中所使用的集群,选择本示例中所创建的应用 wordpress 并单击右侧的 变更配置。
在 模板 中添加 OSSFS 数据卷到 WordPress 目录的映射。
注意:您必须修改 应用版本,否则无法重新部署应用。
单击 确定,重新部署应用。
打开 WordPress,上传附件,OSS bucket 里就能看到上传的附件了。
最后更新:2016-12-13 13:56:10
上一篇:
支持的命令参数__开发者工具_容器服务-阿里云
下一篇:
什么是批量计算__产品简介_批量计算-阿里云
VSwitchSetType__数据类型_API 参考_云服务器 ECS-阿里云
查询时刻网络带宽__资源监控接口_API 手册_CDN-阿里云
功能说明-SNAT__NAT网关产品简介_用户指南_专有网络 VPC-阿里云
删除自定义镜像__镜像_用户指南_云服务器 ECS-阿里云
样式访问__样式_老版图片服务手册_对象存储 OSS-阿里云
安骑士__安全防护_产品使用手册_云解析-阿里云
SMTP之nodejs调用示例__SMTP接口说明_邮件推送-阿里云
JSON数据类型操作__快速入门_云数据库 HybridDB-阿里云
多实例协同消费__loghub-消费_用户指南_日志服务-阿里云
修改数据库备注__数据库管理_API 参考_云数据库 RDS 版-阿里云
相关内容
常见错误说明__附录_大数据计算服务-阿里云
发送短信接口__API使用手册_短信服务-阿里云
接口文档__Android_安全组件教程_移动安全-阿里云
运营商错误码(联通)__常见问题_短信服务-阿里云
设置短信模板__使用手册_短信服务-阿里云
OSS 权限问题及排查__常见错误及排除_最佳实践_对象存储 OSS-阿里云
消息通知__操作指南_批量计算-阿里云
设备端快速接入(MQTT)__快速开始_阿里云物联网套件-阿里云
查询API调用流量数据__API管理相关接口_API_API 网关-阿里云
使用STS访问__JavaScript-SDK_SDK 参考_对象存储 OSS-阿里云