Cloud 工作站可以装载位于同一 VPC 网络中的 Filestore 网络文件系统 (NFS) 实例。可以通过多个 Cloud Workstations 实例。
如需详细了解 Filestore,请参阅 Filestore 文档。
准备工作
创建项目
在工作站项目中,确保您已启用 Filestore API 和 Cloud Workstations API。
确保您已安装并初始化
gcloud
CLI。 如需初始化gcloud
CLI,请运行以下命令:gcloud init
所需的角色
如需获得创建和更新工作站所需的权限,请让管理员向您授予工作站项目的以下 IAM 角色:
-
如果您是 Cloud Workstations 管理员,请让管理员授予您以下角色:
Cloud Workstations Admin (
roles/workstations.admin
)。 -
如果您是 Filestore 管理员,请让管理员授予您以下角色:
Filestore 编辑器 (
roles/file.editor
)。
如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限。
创建 Filestore 实例
如果您尚未创建 Filestore 实例,请使用以下 gcloud
CLI filestore instances create
命令创建一个。如需了解命名信息,请参阅为 Filestore 实例命名和为文件共享命名。
gcloud filestore instances create INSTANCE_ID \
--file-share=name=FILE_SHARE_NAME,capacity=1TiB \
--tier=ENTERPRISE \
--network=name=NETWORK_NAME \
--region=LOCATION \
--project WORKSTATIONS_PROJECT_ID
替换以下内容:
INSTANCE_ID
:用于唯一标识您的 Filestore 实例。FILE_SHARE_NAME
:从 Filestore 实例提供的目录的名称,例如vol1
。NETWORK_NAME
:VPC 网络的名称 实例连接到的 IP 地址。它应该与 Cloud Workstations 集群,例如default
。LOCATION
:您的 Filestore 实例的区域。 它应与工作站集群的区域一致。WORKSTATIONS_PROJECT_ID
:工作站的 ID 项目。
获取 Filestore 实例的 IP 地址
创建 Filestore 实例后,使用 filestore instances describe gcloud
CLI 命令获取其 IP 地址:
gcloud filestore instances describe INSTANCE_ID \
--region=LOCATION \
--project WORKSTATIONS_PROJECT_ID
替换以下内容:
INSTANCE_ID
:用于唯一标识您的 Filestore 实例的 ID。LOCATION
:您的 Filestore 实例的区域。 它应与工作站集群的区域一致。WORKSTATIONS_PROJECT_ID
:您的工作站项目的 ID。
该命令按以下格式输出 IP 地址:
...
networks:
- connectMode: DIRECT_PEERING
ipAddresses:
- FILESTORE_IP_ADDRESS
...
请记下 FILESTORE_IP_ADDRESS
,因为您需要这个
。
创建工作站集群
如果您尚未创建工作站集群,请使用 gcloud
CLI clusters create
命令创建一个:
gcloud workstations clusters create \
WORKSTATIONS_CLUSTER_NAME \
--network=NETWORK_NAME \
--region=LOCATION \
--project=WORKSTATIONS_PROJECT_ID
替换以下内容:
WORKSTATIONS_CLUSTER_NAME
:工作站的名称 集群。NETWORK_NAME
:Cloud Workstations 实例所连接的 VPC 网络的名称。它应与 Filestore 实例的网络一致,例如default
。LOCATION
:工作站集群的区域名称。该区域应与 Filestore 实例所在的区域一致。WORKSTATIONS_PROJECT_ID
:工作站的 ID 项目。
创建工作站配置和工作站
如果您尚未创建 Cloud Workstations 配置和 工作站实例,请参阅 创建工作站配置 和创建工作站。
在工作站中装载 Filestore 实例
启动 Cloud Workstations 实例后,前往终端窗口,然后运行以下命令以挂载 Filestore 实例:
sudo rpcbind
mkdir -p FILE_SHARE_NAME
sudo mount -o rw,intr FILESTORE_IP_ADDRESS:/FILE_SHARE_NAME FILE_SHARE_NAME
替换以下内容:
FILE_SHARE_NAME
:从 Filestore 实例,例如vol1
。FILESTORE_IP_ADDRESS
:您的 Filestore 实例。
mount
命令成功后,您会在文件共享路径中看到 Filestore 实例内容。
如需详细了解如何装载 Filestore 实例,请参阅在 Compute Engine 客户端上装载文件共享。
为 Filestore 自动挂载创建自定义容器映像
您可以使用以下 Dockerfile 创建自定义容器映像,该映像会在启动时自动在 Cloud Workstations 中挂载 Filestore 实例。
FROM us-central1-docker.pkg.dev/cloud-workstations-images/predefined/code-oss:latest
RUN echo "#!/bin/bash\n\
sudo rpcbind\n\
sudo mkdir -p /home/user/FILE_SHARE_NAME\n\
sudo mount -o rw,intr FILESTORE_IP_ADDRESS:/FILE_SHARE_NAME /home/user/FILE_SHARE_NAME" | sudo tee -a /etc/workstation-startup.d/011_mount-filestore.sh
RUN sudo chmod +x /etc/workstation-startup.d/011_mount-filestore.sh
替换以下内容:
FILE_SHARE_NAME
:从 Filestore 实例,例如vol1
。FILESTORE_IP_ADDRESS
:您的 Filestore 实例。
如需详细了解如何为 Google Cloud 控制台创建自定义容器映像, Cloud Workstations 请参阅自定义容器映像。