Я все еще новичок в использовании docker, и в настоящее время я планирую провести обучение по машинному обучению на суперкомпьютере, которым пользуются многие пользователи. Я успешно создал образ и смонтировал все необходимые данные, но когда я попытался запустить тренинг, мне было отказано в разрешении, когда код пытается получить доступ к TXT-файлу. Вот ошибка
user@701c214f9fa9:/app/sfsnet$ python main_mix_training.py
Traceback (most recent call last):
File "main_mix_training.py", line 156, in <module>
main()
File "main_mix_training.py", line 132, in main
with open(args.log_dir+'/details.txt', 'w') as f:
PermissionError: [Errno 13] Permission denied: './results//details.txt'
user@701c214f9fa9:/app/sfsnet$ python main_mix_training.py
Traceback (most recent call last):
File "main_mix_training.py", line 156, in <module>
main()
File "main_mix_training.py", line 132, in main
with open(args.log_dir+'/details.txt', 'w') as f:
PermissionError: [Errno 13] Permission denied: './results//details.txt'
Я проверил владение смонтированным каталогом, и все должно быть моим (dgx_user6):
total 308
-rw-r--r-- 1 dgx_user6 dgx_user6 1271 二 14 05:32 checkmodel.py
-rw-r--r-- 1 dgx_user6 dgx_user6 458 二 13 23:51 cropping.py
-rw-r--r-- 1 dgx_user6 dgx_user6 12890 二 14 14:03 data_loading.py
drwxr-xr-x 5 dgx_user6 dgx_user6 4096 二 14 04:26 dataset
-rw-r--r-- 1 dgx_user6 dgx_user6 641 二 13 23:51 generate_dataset_csv.py
-rw-r--r-- 1 dgx_user6 dgx_user6 2687 二 13 23:51 interpolate.py
-rw-r--r-- 1 dgx_user6 dgx_user6 95 二 14 05:32 interpolate.sh
-rw-r--r-- 1 dgx_user6 dgx_user6 0 二 14 05:32 log_file
-rw-r--r-- 1 dgx_user6 dgx_user6 6555 二 13 23:51 main_gen_pseudo-data.py
-rw-r--r-- 1 dgx_user6 dgx_user6 7548 二 13 23:51 main_gen_synthetic_and_full.py
-rw-r--r-- 1 dgx_user6 dgx_user6 7030 二 14 14:12 main_mix_training.py
-rw-r--r-- 1 dgx_user6 dgx_user6 69169 二 14 05:34 'model backup.py'
-rw-r--r-- 1 dgx_user6 dgx_user6 2914 二 14 05:32 model_loading_synchronization.ipynb
-rw-r--r-- 1 dgx_user6 dgx_user6 69339 二 14 05:34 models.py
drwxr-xr-x 2 dgx_user6 dgx_user6 4096 二 13 23:51 pretrained
drwxr-xr-x 2 dgx_user6 dgx_user6 4096 二 14 05:33 __pycache__
-rw-r--r-- 1 dgx_user6 dgx_user6 3490 二 13 23:51 README.md
drwxr-xr-x 9 dgx_user6 dgx_user6 4096 二 14 05:33 results
-rw-r--r-- 1 dgx_user6 dgx_user6 5090 二 14 05:34 shading.py
-rw-r--r-- 1 dgx_user6 dgx_user6 605 二 14 05:34 super_resolution.py
-rw-r--r-- 1 dgx_user6 dgx_user6 39867 二 14 05:32 'train backup.py'
-rw-r--r-- 1 dgx_user6 dgx_user6 32377 二 13 23:51 train.py
-rw-r--r-- 1 dgx_user6 dgx_user6 1685 二 13 23:51 utils.py
Я создал контейнер с помощью этой команды
nvidia-docker run -e NVIDIA_VISIBLE_DEVICES=3 -t -i --name coba --mount type=bind,src=/home/dgx_user6/SfSNet/,dst=/app/sfsnet sfs_face
часть контейнера о создании пользователя
# Create a non-root user and switch to it
RUN adduser --disabled-password --gecos '' --shell /bin/bash user \
&& chown -R user:user /app
RUN echo "user ALL=(ALL) NOPASSWD:ALL" > /etc/sudoers.d/90-user
USER user
# All users can use /home/user as their home directory
ENV HOME=/home/user
RUN chmod 777 /home/user
Я надеюсь, что кто-то может помочь мне решить эту проблему