将卷挂载到 GCE docker 容器

时间:2021-07-07 03:25:12

标签: docker google-compute-engine google-container-registry

我有一个非常简单的 docker 镜像,我将它推送到 GCR。我在本地使用的 docker compose 文件如下所示:

version: '3.7'
services:
  matterbridge:
    image: 42wim/matterbridge
    restart: unless-stopped
    volumes:
    - ~/Code/Bot-Relay/matterbridge:/etc/matterbridge

我正在尝试使用 GCR 映像创建 GCE VM 实例,但是我不确定如何创建卷并将文件传递给 /etc/matterbridge。在我的本地设置中,它复制我的本地 matterbridge 文件夹并将其安装到 docker 容器 /etc/matterbridge

知道如何在 GCE 上完成此任务吗?看起来很简单,但我很难过。任何帮助表示赞赏

1 个答案:

答案 0 :(得分:0)

我们可以,

  1. Mount a host directory as a data volume
  2. Mount tmpfs file system as a data volume
  3. Mount a persistent disk as a data volume
  4. Use Volume 而不是 bind mounts,这是您使用的方法,根据我们的喜好。

要从容器传递和访问文件,请按照以下步骤操作,

  1. 通过 SSH 连接到主机 GCE VM 并将文件上传到 VM。

  2. 要将文件复制到运行在 GCE VM 上的容器中,我们可以使用以下 docker 命令,

     docker ps   # to view active containers and get the container ID  
     docker cp <file-src-path> container-id:<file-dest-path>   #to copy a file into a container
    

3.您可以使用下面的docker命令来选择执行命令的工作目录,

    docker exec -it -w /<file-dest-path> <container-id> bash