我需要在Google Cloud函数/tmp
文件夹中创建两个文件夹。我正在使用一个库,它要求文件采用该格式(它们不能全部采用/tmp
)。
我试过这个 -os.makedirs('tmp/test')
但给出了以下错误:
Function failed on loading user code. Error message: [Errno 30] Read-only file system: 'tmp'
Detailed stack trace:
Traceback (most recent call last):
File "/env/local/lib/python3.7/site-packages/google/cloud/functions/worker_v1.py", line 315, in check_or_load_user_function
_function_handler.load_user_function()
File "/env/local/lib/python3.7/site-packages/google/cloud/functions/worker_v1.py", line 190, in load_user_function
spec.loader.exec_module(main_module)
File "<frozen importlib._bootstrap_external>", line 728, in exec_module
File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
File "/user_code/main.py", line 3, in <module>
os.makedirs('tmp/test')
File "/env/lib/python3.7/os.py", line 213, in makedirs
makedirs(head, exist_ok=exist_ok)
File "/env/lib/python3.7/os.py", line 223, in makedirs
mkdir(name, mode)
OSError: [Errno 30] Read-only file system: 'tmp'
有什么办法可以解决这个问题吗?
使用os.makedirs('tmp/test')
将尝试在/user_code/tmp/test
处创建一个目录,这是不可写的。
您需要使用前导斜杠来确保在/tmp/test
处创建目录,这是文件系统中唯一可写的部分。