借助Azure DevOps永久在Azure App Service中安装Linux依赖
永久安装Azure App Service Linux依赖的方法
Azure App Service Linux的容器实例每次部署、重启都会重置为基础镜像状态,手动安装的依赖自然会被清掉,以下是几种永久解决的方案:
通过启动命令自动安装
进入Azure门户的App Service配置→常规设置,把启动命令改成:apt-get update && apt install -y libxrender1 libxext6 libfontconfig1 && gunicorn --bind=0.0.0.0 --timeout 600 myproject.wsgi注意把最后的
gunicorn --bind=0.0.0.0 --timeout 600 myproject.wsgi换成你实际的Django启动命令,每次应用启动都会先装依赖再启动服务。用POST_BUILD_COMMAND自动执行安装
在App Service的配置→应用设置里,新增一个名为POST_BUILD_COMMAND的配置项,值填:apt-get update && apt install -y libxrender1 libxext6 libfontconfig1这个命令会在部署构建完成后自动运行,帮你装好系统依赖。
自定义Docker镜像(生产环境首选)
如果你的应用用自定义容器部署,直接在Dockerfile里加入依赖安装步骤:FROM python:3.11-slim # 安装所需系统依赖 RUN apt-get update && apt-get install -y --no-install-recommends libxrender1 libxext6 libfontconfig1 \ && rm -rf /var/lib/apt/lists/* # 后续步骤:设置工作目录、安装Python依赖、复制代码等 WORKDIR /app COPY requirements.txt . RUN pip install --no-cache-dir -r requirements.txt COPY . . # 启动命令 CMD ["gunicorn", "--bind=0.0.0.0", "--timeout", "600", "myproject.wsgi"]构建镜像时就把依赖打包进去,部署后不会再丢失。
内容的提问来源于stack exchange,提问作者Sathiamoorthy
相关产品推荐
相关产品推荐

