GCE에 Kaggle Docker를 구축하여 GCS를 마운트했습니다.

2708 단어 도커GCSgceKaggle

0.Intro



에라가 빠졌습니다. . . GCE도 제대로 사용한 적이 없는 것도 있습니다만 뭐라고 할지 마음이 다르네요(무엇과의 비교?)

1.GCE 구축



디폴트의 ​​us-central1(아이오와)로 구축하려고 생각했습니다. 처음에는 최근 사용할 수 있게 되었다고 화제의 A100을 할당하거나 해 보았습니다만 원래, 아마 초보자이기 때문일까요, 할당해도 안 된다. P100이라면 어떨까라고 생각했습니다만 이쪽도 안된다. 어쩔 수 없이 T4×4에서 타협(?).
여러분은 Marketplace에서 가져오고 있습니다만, 왠지 GPU의 할당이 없다고 말해집니다.

따라서 처음부터 GCE 세워 환경을 만들기로 했습니다. 개인적으로 GPU 할당에 빠졌습니다. GPU 할당은 몇 가지 있지만, 분명히


라는 NVIDIAA(제품번호) GPUs라는 것이 이른바 인스턴스에 GPU 할당할 때 설정하는 항목인 것 같습니다. 입니다.

이번에는 OS는 우분투 20.04로 만들었습니다. 디스크는 200G입니다. (실은 한 번 뒤집어서 50G로 했더니 디스크가 부족하면 화내고 다시 하고 있다)

GCP의 리소스 부족으로 영역을 us-central1-b로 전환하여 마침내 구축 완료.

GCE를 구축할 수 있다면
NVIDIA Docker는 지금 어떻게됩니까? (20.09 버전)
참고로 NVIDIA Docker를 넣습니다. 호스트의 우분투에는 CUDA Toolkit 11.1 Update 1 Downloads가 포함되어 있습니다. 물론 설치 방법은 위와 같이 드라이버뿐입니다.

kaggle docker를 설치하는 방법은 특별히 바뀌지 않았습니다. 곳곳에 있는 튜토리얼로 남아 있습니다.
kaggle docker 빌드 후 시작
docker run --rm --gpus all -it kaggle/python-gpu-build  /bin/bash

로 시작하고 컨테이너에 넣어야합니다.

2.GCS 마운트



GCE의 로컬만으로는 용서하지 않기 때문에 GCS를 마운트하고 싶습니다.
여기 를 참고로 했습니다.

상기 사이트에 기재된 쉘을 복사해 작성해 실행, gcsfuse를 인스톨 합니다.
그 후
gcloud auth application-default login

을 실행하여 브라우저에서 인증합니다.
그 후 환경 변수를 설정.
export GOOGLE_APPLICATION_CREDENTIALS=~/.config/gcloud/application_default_credentials.json

여기까지 오면 마침내 목적의 버킷을 마운트 할 수 있습니다.
gcsfuse -o allow_other {バケット名} /media/data

이 때 "-o allow_other"옵션이 없으면 컨테이너 내에서 permission denied로 화가납니다.
또한 이 옵션을 사용하려면
/etc/fuse.conf

라는 파일에
# mount_max = 1000
user_allow_other

와 'user_allow_other'의 코멘트를 제거하고 활성화하십시오.
※보안상의 문제도 지적되고 있습니다. 여기는 자기 책임입니다.

여기 와서 마침내
docker run --rm --gpus all -v /media/:/media/  -it kaggle/python-gpu-build  /bin/bash

GCE의 Kaggle Docker에 GCS를 마운트하고 액세스할 수 있었습니다.

좋은 웹페이지 즐겨찾기