docker-compose部署python Web项目

参考文档

一、准备好项目文件

  • app.py

    from flask import Flask
    from flask import jsonify
    from flask_cors import CORS
    import pymysql
    #
    #
    #
    # 搜索 更新下载
    @app.route("/updateCountSearch/<id>/<num>")
    def updateCountSearch(id, num):
        cursor.execute("update manypic set count=" + num + " where id = '" + id+"'")
        db.commit()
        return jsonify([{'res': 'success'}])
    
    
    # 程序的入口
    if __name__ == "__main__":
        db = pymysql.connect(
            host="39.xx.xx.37",  # 主机
            port=3306,  # 端口
            db="spider",  # 数据库名
            user="root",  # 用户名
            passwd="xxx",  # 密码
            charset="utf8"
        )
        # 创建cursor
        cursor = db.cursor(cursor=pymysql.cursors.DictCursor)
        # 解决flask中文乱码
        app.config['JSON_AS_ASCII'] = False
        # 调试模式
        # port 端口号 默认5000
        app.run(debug=True, port=8080, host="0.0.0.0")
    
  • requirements.txt

    Flask==1.1.2
    Flask-Cors==3.0.10
    PyMySQL==0.10.1
    

二、编写Dockerfile

FROM python:3.7
RUN mkdir /code
WORKDIR /code
ADD requirements.txt /code/
RUN pip install -r requirements.txt
ADD . /code

三、编写docker-compose.yml

version: "3.3"
services:
        web:
                build: .
                command: python3 ./app.py runserver 0.0.0.0:8080
                ports:
                        - "8080:8080"

四、启动

docker-compose up -d

image-20210511204420246

五、访问

image-20210511204520157

六、整合前端

image-20210511212910960

Logo

GitCode 天启AI是一款由 GitCode 团队打造的智能助手,基于先进的LLM(大语言模型)与多智能体 Agent 技术构建,致力于为用户提供高效、智能、多模态的创作与开发支持。它不仅支持自然语言对话,还具备处理文件、生成 PPT、撰写分析报告、开发 Web 应用等多项能力,真正做到“一句话,让 Al帮你完成复杂任务”。

更多推荐