我正在尝试在云代工上部署一个asp.net核心3.1 API。我没有管理员权限,我只有开发者权限。有没有办法指定这些库(libc6-dev、libgdiplus和libx11-dev)的URL(可能是git或一些官方存储库),这样我就可以在部署期间执行manifest.yml文件并安装这些依赖项?此外,我无法在云代工上打开对docker文件的支持,因为我收到了一条消息(权限不足)
我建议您尝试一下apt构建包。你可以给它额外的Ubuntu软件包名称,它会为你安装这些名称。
你可以通过apt.yml文件来完成。查看此帖子以获取说明。
重要的是要理解apt-buildpack将把这些包安装到非标准位置。由于它也以非root用户身份运行,因此无法将它们安装到标准位置。
为了绕过这一限制,它将$PATH
和$LD_LIBRARY_PATH
等变量设置为指向已安装项目的位置。大多数构建工具都会获取这些env变量,并能够定位您安装的内容。
但它并不完美,有些工具需要设置额外的env变量。如果您在构建时仍然遇到错误,请查看您的构建工具,并检查是否有方法可以指出apt-buildpack安装内容的位置。它写入的路径可能会根据构建包的顺序而有所不同,但如果打印出$PATH
,则可以看到位置。它通常是/home/vcap/deps/0/...
,但索引可以根据构建包的顺序进行更改。