You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为Autoplotter创建Docker服务并嵌入Django模板iframe的咨询

这个需求完全可以实现,Autoplotter是基于Web的可视化工具,打包为Docker容器对外提供HTTP服务后,即可通过iframe嵌入到Django模板中展示。

操作指引

1. 准备Docker打包文件

新建工作目录,在目录下创建3个文件:

1.1 依赖声明文件requirements.txt

autoplotter==0.1.3
gunicorn==21.2.0
flask-cors==4.0.0

1.2 服务启动脚本run.py

from autoplotter import run_app
from flask_cors import CORS
import os

# 初始化Autoplotter服务
app = run_app(
    host="0.0.0.0",
    port=int(os.getenv("PORT", 8050)),
    debug=False,
    return_app=True
)
# 配置跨域许可,生产环境请将origins替换为你的Django服务实际域名,不要使用通配符
CORS(app.server, resources={r"/*": {"origins": "http://localhost:8000"}})

if __name__ == "__main__":
    app.run_server(host="0.0.0.0", port=int(os.getenv("PORT", 8050)))

1.3 Docker镜像构建文件Dockerfile

FROM python:3.9-slim
WORKDIR /app
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
COPY run.py .
EXPOSE 8050
CMD ["python", "run.py"]

2. 构建并启动Docker服务

  • 构建镜像:docker build -t autoplotter-service .
  • 启动容器:docker run -d -p 8050:8050 --restart=always --name autoplotter autoplotter-service
  • 可用性验证:本地访问http://localhost:8050,可以正常打开Autoplotter操作界面即启动成功。

3. 嵌入Django模板

在需要展示Autoplotter的Django模板文件中,插入iframe代码:

<iframe 
    src="http://localhost:8050" 
    width="100%" 
    height="800px" 
    frameborder="0"
    allow="fullscreen"
>
</iframe>

将src参数替换为你实际部署的Autoplotter服务地址即可。

4. 生产环境配置建议

  • 禁止开启Debug模式,避免信息泄露
  • 跨域配置仅放行你的Django服务域名,不要使用*通配符
  • 可通过Nginx反向代理Autoplotter服务,配置HTTPS,避免HTTP/HTTPS混合内容被浏览器拦截
  • 若需要多用户使用,建议为不同用户启动独立的Autoplotter实例,做好数据隔离。

内容的提问来源于stack exchange,提问作者Filbadeha

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.13 03:42:03