如何解决GCP 上的 Docker 持久卷
我正在将服务部署到 GCP,我想保留数据库和日志。
不考虑 VM 的本地存储。
如何将 GCP 磁盘/存储桶挂载到容器?
这是我的docker-compose.yml
:
version: '3'
services:
backend:
image: mybackend:latest
volumes:
- logs-data:/path/to/logs
database:
image: postgres:12.6-alpine
volumes:
- db-data:/var/lib/postgresql/data
- logs-data:/var/log/postgresql
volumes:
db-data:
driver: ??
driver_opts: ??
logs-data:
driver: ??
driver_opts: ??
gcePersistentDisk
仅适用于 Kubernetes。
解决方法
您可以使用 gcsfuse 创建一个将数据存储在谷歌云存储中的 docker 卷。
- 首先按照 [gcsfuse] 文档中的说明安装 gcsfuse。
- 创建一个谷歌云存储桶
- 使用 gcsfuse 在本地文件系统上挂载存储桶
- 绑定挂载这个文件系统 5
Docker 内置驱动 local
仅支持 NFS
和 bind
(绑定到本地文件系统)。
bind
不被视为解决方案,因为容器不会位于同一节点中。
以下是 Google 提供的可能解决方案:
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。