微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Pandas DataFrame到Excel无法在Docker中工作

如何解决Pandas DataFrame到Excel无法在Docker中工作

我构建了一个破折号应用程序,然后将其保存到docker,并尝试使用以下方式导出数据表:

pd.DataFrame(rows).to_excel(file,index=False) 

我收到以下错误

Traceback (most recent call last):
      File "/usr/src/app/app.py",line 246,in update_output
        pd.DataFrame(rows).to_excel(file,index=False)
      File "/usr/local/lib/python3.8/site-packages/pandas/core/generic.py",line 2023,in to_excel
        formatter.write(
      File "/usr/local/lib/python3.8/site-packages/pandas/io/formats/excel.py",line 742,in write
        writer.save()
      File "/usr/local/lib/python3.8/site-packages/pandas/io/excel/_openpyxl.py",line 43,in save
        return self.book.save(self.path)
      File "/usr/local/lib/python3.8/site-packages/openpyxl/workbook/workbook.py",line 392,in save
        save_workbook(self,filename)
      File "/usr/local/lib/python3.8/site-packages/openpyxl/writer/excel.py",line 291,in save_workbook
        archive = ZipFile(filename,'w',ZIP_DEFLATED,allowZip64=True)
      File "/usr/local/lib/python3.8/zipfile.py",line 1251,in __init__
        self.fp = io.open(file,filemode)
    FileNotFoundError: [Errno 2] No such file or directory: 'S:/Folder1/Folder2/Folder3/file_name.xlsx'

当我在python中运行代码时,代码工作正常,仅在docker容器中中断。我从需求文件中安装了openpyxl。

任何想法可能是什么原因造成的?

非常感谢

解决方法

在Docker中运行应用程序时,您无权访问主机文件系统(我假设S:/Folder1/Folder2/Folder3/是本地文件系统上的目录)。因此,您应该mount the folder需要写入,或写入Docker容器内的某个位置。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。