我正在尝试运行 Docker 容器来分析 Google Cloud Bucket 中的数据。
我已经能够使用gcsfuse
.
为了能够安装其他程序(并挂载存储桶),我安装了 Docker(并且没有使用 Docker 优化实例选项)。如果我以交互模式运行 Docker(不安装驱动器),它看起来工作正常。
但是,如果我尝试使用已安装的驱动器(即 gcsfuse-mounted Bucket)以交互模式运行 Docker,我会收到一条错误消息:
user@instance:~/bucket-name/subfolder$ docker run -it -v /home/user/bucket-name:/mnt/bucket-name gcr.io/deepvariant-docker/deepvariant
docker: Error response from daemon: error while creating mount source path '/home/user/bucket-name': mkdir /home/user/bucket-name: file exists.
我希望我接近完成这项工作:有人对这个错误消息的相对简单的修复有任何想法吗?
顺便说一句,我意识到还有其他方法可以在 Google Cloud 上运行 DeepVariant,但我正在努力使事情尽可能类似于我在 AWS 上所做的事情(另外,我可能需要做一些额外的故障排除来分析其中一个我的文件)。
非常感谢您的帮助!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~
仅供参考,这就是我安装桶的方式:
#mount directory: https://github.com/GoogleCloudPlatform/gcsfuse/blob/master/docs/installing.md
export GCSFUSE_REPO=gcsfuse-`lsb_release -c -s`
echo "deb http://packages.cloud.google.com/apt $GCSFUSE_REPO main" | sudo tee /etc/apt/sources.list.d/gcsfuse.list
curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
sudo apt-get update
sudo apt-get -y install gcsfuse
#restart and mount directory: https://cloud.google.com/storage/docs/gcs-fuse
#NOTE: please make sure you are in your home directory (I encounter issues if I try to mount from /mnt)
mkdir [bucket-name]
gcsfuse -o allow_other --file-mode 777 --dir-mode 777 [bucket-name] ./[bucket-name]
这就是我安装 Docker 的方式:
#install Docker for Debian: https://docs.docker.com/install/linux/docker-ce/debian/
sudo apt-get update
sudo apt-get -y install \
apt-transport-https \
ca-certificates \
curl \
gnupg2 \
software-properties-common
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -
sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/debian \
$(lsb_release -cs) \
stable"
sudo apt-get update
sudo apt-get -y --allow-unauthenticated install docker-ce docker-ce-cli containerd.io
#fix Docker sock issue: https://stackoverflow.com/questions/47854463/got-permission-denied-while-trying-to-connect-to-the-docker-daemon-socket-at-uni
sudo usermod -a -G docker [user]
#have to restart after this