使用远程Docker解释器时,PyCharm以root身份运行python脚本

时间:2018-08-21 12:18:39

标签: python docker permissions pycharm

我正在使用python库FEniCS,并使用Docker容器安装了它(图像为quay.io/fenicsproject/stable)。 因此,现在,如果要运行使用FEniCS的Python脚本,则必须从此容器中运行它。 我使用PyCharm,并在此容器中将Python解释器设置为一个。

我的问题是我的程序在文件夹中输出了一些文件,但是通过PyCharm执行脚本时,文件和文件夹具有root权限(请参见heat_gaussian_a10):

drwxrwxr-x 10 matthieu matthieu 4,0K août  21 13:36 .                
drwxrwxr-x 13 matthieu matthieu 4,0K août  20 16:38 ..               
-rw-rw-r--  1 matthieu matthieu 7,6K août  20 13:48 demo_poisson.py  
drwxrwxr-x  8 matthieu matthieu 4,0K août  21 13:56 .git             
-rw-rw-r--  1 matthieu matthieu  114 août  20 17:17 .gitignore       
drwxr-xr-x  2 root     root     4,0K août  21 13:35 heat_gaussian_a10
drwxr-xr-x  2 matthieu matthieu 4,0K août  21 10:31 heat_gaussian_a5 
drwxr-xr-x  2 matthieu matthieu 4,0K août  21 10:33 heat_gaussian_a50

因此,除非使用sudo rm -r heat_gaussian_a10,否则无法删除它们。

如何配置PyCharm以与root以外的用户身份运行脚本?


其他文件夹heat_gaussian_a*是通过在容器中手动运行python脚本创建的:

matthieu$ docker attach my_fenics_container
fenics@db841ff4cae4:~/shared$ python3 tutorial_heat_gaussian.py

那些获得正确的权限/所有者


我试图在“配置”设置中更改“ Docker容器设置”。 默认情况下,卷绑定为: /home/matthieu/fenics_tutorials:/opt/project

容器中的主要用户称为fenics,所以我将绑定更改为/home/matthieu/fenics_tutorials:/home/fenics/project,因为我认为/opt/project必须属于root,而{{1} }必须属于/home/fenics/project。结果是,文件仍然写为root ...

0 个答案:

没有答案