在 Google 云计算实例 运行 容器映像上增加 Docker 分区大小

Increasing Docker partition size on Google Cloud Compute instance running container image

我在生产中有一个 Apache 服务器 运行 在 Docker 容器中,我已经使用 "gcloud compute instances create-with-container" 命令将其部署到 Google 计算实例. /var/www/html 文件夹使用 --container-mount-host-path 标志从计算机实例的启动磁盘挂载到容器中以使其持久化:

gcloud compute instances create-with-container $INSTANCE_NAME \
    --zone=europe-north1-a \
    --container-image gcr.io/my-project/my-image:latest \
    --container-mount-host-path mount-path=/var/www/html,host-path=/var/www/html,mode=rw \
    --machine-type="$MACHINE_TYPE"

但是现在我运行遇到了Docker分区大小只有5.7G的问题! df -h 的输出:

...
/dev/sda1       5.7G  3.6G  2.2G  62% /mnt/stateful_partition
overlay         5.7G  3.6G  2.2G  62% /var/lib/docker/overlay2/4f223d8157033ce937a79af741df3eadf79a02d2d003f01a085301ff66884bf2/merged
overlay         5.7G  3.6G  2.2G  62% /var/lib/docker/overlay2/86316491e2bb20bc300c1cc55c9f9254001ed77d6ec7f05f716af1e52fe15f53/merged
...

我原以为分区大小会自动增加,但我 运行 遇到了网站无法再将文件写入磁盘的问题,因为分区已满。作为快速修复,我在主机上 运行 “docker prune -a”(周围有一堆旧图像)在 [=29] 上制作更多 space =]分区.

所以我的问题是,增加分区大小的正确方法是什么?

您可以在 Google Cloud Console GUI 中调整启动磁盘的大小。但是,由于这是一个容器主机,我建议删除虚拟机实例并使用正确的配置创建一个新实例。

默认磁盘大小通常为 10 GB。要创建具有更大磁盘的虚拟机实例,请在创建实例时指定。

将以下内容添加到您的 CLI 命令中:

--boot-disk-size=32GB 

可选择指定永久性磁盘的类型以控制成本:

--boot-disk-type=pd-standard

gcloud compute instances create-with-container