ホームページ  >  に質問  >  本文

golang - docker volume挂载不存在的主机目录到容器时,自动创建的目录的权限为root

请问,我用docker volume时,挂在本地目录到容器目录。如果本地目录不存在,docker会自动创建一个。比如:
docker run --name=node-1 --rm=true --volume=/home/simba/work/test:/home/jovyan/work --publish=:8888 --publish-all=false jupyter/all-spark-notebook
当test用户不存在时,docker会自动创建test.然而自动创建的test的权限是drwxr-xr-x 2 root root, 在容器中没有权限在该目录下新建文件。请问如何解决这个问题?

伊谢尔伦伊谢尔伦2709日前677

全員に返信(1)返信します

  • 大家讲道理

    大家讲道理2017-04-22 09:00:56

    あなたが言及した状況では、Docker のデータ量を使用する必要があります。 Swarm では、ホスト ディレクトリをマウントしてデータを保存する方法は使用しないでください。

    Swarm環境で必要なデータボリュームを作成すると、コンテナがそのデータボリュームを使用できるようになります。 docker volume create mydata 来创建数据卷,然后在挂载时使用 -v mydata:/opt/data,或者直接在 docker-composevolumes:部分定義を使用できます:

    リーリー

    あなたが指摘した問題を解決できます。

    返事
    0
  • キャンセル返事