首页 > 解决方案 > 持久存储 Azure 容器

问题描述

几天来,我一直在为如何在 Azure 上部署的自定义 docker 容器中设置持久存储而苦苦挣扎。

为了方便起见,我在容器中使用了官方的 Wordpress 图像,并通过环境变量提供了数据库凭据,到目前为止一切都很好。该应用程序是无状态的,数据存储在 Azure 中的单独 MySQL 服务中。

如何处理服务器日志或上传的图像等内容文件,这些文件位于 /var/www/html/wp-content/upload 中,如果容器被删除或恢复备份快照,这些文件将被删除。是否可以将此目录挂载到主机位置?是否可以挂载此目录,以便通过 FTP 访问应用服务?

标签: azure

解决方案


好的,我意识到不可能将卷安装到单个容器应用程序。要挂载卷,您必须使用 Docker Compose 并挂载卷,如下例所示。

另外,请确保将应用程序设置设置WEBSITES_ENABLE_APP_SERVICE_STORAGETRUE

version: '3.3'

services:
   wordpress:
     image: wordpress
     volumes:
      - ${WEBAPP_STORAGE_HOME}/site/wwwroot:/var/www/html
     ports:
       - "8000:80"
     restart: always

这样,您上传的文件将被保留并包含在快照备份中。


推荐阅读