docker之使用System.Drawing生成图片缺少Gdiplus.dll错误

时间:2022-02-21 09:58:44

1.在docker 上找到并运行需要System.Drawing的镜像 然后退出执行另一语句

docker run -it container01

进入镜像以方便安装gdiplus

docker exec -ti container01 /bin/bash

执行更新环境

apt-get update

下载安装gdiplus

apt-get install libgdiplus

退出镜像

exit

提交安装到镜像中

docker commit container01

此时镜像运行后就可以支持system.drawing生成图片了,但是感觉相对繁琐,另外经查阅可以保存镜像以备其他镜像需要使用gdiplus时可以直接引用 ,这种情况下就方便使用用了

还有一种方式 可以直接修改dockerfile文件,第一次build的时候会下载相关,可能耗时,不过可以设置时区,方便就近下载 倒是也会比上面的方式慢,毕竟免去了命令行的输入,dockerfile文件内容如下:

FROM microsoft/aspnetcore:2.0.8

RUN cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

RUN apt-get update

RUN apt-get install libgdiplus --assume-yes

RUN cd /usr/lib

RUN ln -s libgdiplus.so gdiplus.dll

COPY . /app

WORKDIR /app

ENV ASPNETCORE_URLS http://+:8000

EXPOSE 8000

ENTRYPOINT  ["dotnet", "xxx.xxxx.Api.dll"]

  

文档参考于: http://www.cnblogs.com/lori/p/7543886.html