Django 部署上线——踩坑 3 天

讨论 未结 63 67
maloneleo88
maloneleo88 2022年4月17日 08:14 发表
收藏(0)  分享
相关标签: 灌水交流
注意:本文归作者所有,未经作者允许,不得转载
63个回复
  • westoy
    2022年4月17日 08:14
    大部分篇幅都是对运维不熟, 换 php 部署一样会碰到.......而且明明可以直接通过一个 stack.yml 解决, 去瞎折腾.......
    0 0
  • maloneleo88
    maloneleo88 (楼主)
    2022年4月17日 08:14
    不是不熟,根本不懂。就是觉得太麻烦
    0 0
  • westoy
    2022年4月17日 08:14
    nginx 、mysql 、uwsgi => fpm/spawn-cgi , 部署 php 是一样的步骤啊, 头文件这些 mysqlclient-dev 、php-dev 、python3-dev 这些也一样的, 没什么区别 而且如果你是开发环境,nginx 不用装的,mysql 实际上也不需要, 因为 django 除了 postgresql 是超等公民,mysql 和 sqlite 的 db 接口是一样的, 基于 sqlite 开发就行了......
    0 0
  • liuhan907
    2022年4月17日 08:14
    你这个描述给我的感觉类似于不知道电锯怎么开然后抱怨砍树不如斧头好使…
    0 0
  • maloneleo88
    maloneleo88 (楼主)
    2022年4月17日 08:14
    记一下,不想 3 天白忙,被折磨死了😖
    0 0
  • maloneleo88
    maloneleo88 (楼主)
    2022年4月17日 08:14
    真心觉得以前用宝塔部署 php 那叫一个简单,随便发发牢骚 嘿!
    0 0
  • seakingii
    2022年4月17日 08:14
    SB PYTHON ,PHT,NODEJS ,JAVA,.NET 还是 GOLANG 好,就一个 EXE....
    0 0
  • 275761919
    2022年4月17日 08:14
    其实和 Django 完全没有关系,就是非常基础的安装软件
    0 0
  • agagega
    2022年4月17日 08:14
    php 项目相比其他很多语言有个优点:管理员可以在线上修改代码、更新版本(虽然这样未必安全)
    0 0
  • techstay
    2022年4月17日 08:14
    感觉你这情况用 docker 这类容器更好一点
    0 0
  • LeeReamond
    2022年4月17日 08:14
    exe 也无法规避 mysql 和 nginx ,你在说啥
    0 0
  • neoblackcap
    2022年4月17日 08:14
    下次这样的活找请联系我,只要 500 人民币,你啥都不用做,有人工智能系统帮你处理好一切
    0 0
  • zmaplex
    2022年4月17日 08:14
    熟悉了 Django 部署很简单,自己要写一套模板工程,后续就是一键部署的事情了。 另外已经不推荐 uWSGI ,建议 gunicorn +
    0 0
  • msg7086
    2022年4月17日 08:14
    神™宝塔部署,你拿现成的部署工具去和服务器从零开始部署比? 我用 docker 部署还只要一行命令呢,可比你装宝塔简单多了。
    0 0
  • zhennann
    2022年4月17日 08:14
    有空试一下 CabloyJS ,一定会有似曾相识的感觉。因为包含大量曾经想做而没有做的功能和特性。
    0 0
  • aru
    2022年4月17日 08:14
    人菜,又没耐心,还觉得自己牛逼
    0 0
  • encro
    2022年4月17日 08:14
    和 PHP 部署其实没有太大差别,只是宝塔将这些隐藏了: Venv -> 宝塔 PHP 多版本 uwsgi -> fpm nginx -> nginx 大家背后的原理都基本一样。应该可以举一反三的,只能证明 PHP 基础也非常一般了。
    0 0
  • echo1937
    2022年4月17日 08:14
    前排提醒:Django 2.2 has reached the end of extended support. The final security release (2.2.28) was issued today. All Django 2.2 users are encouraged to upgrade to Django 3.2 or later.
    0 0
  • WeaponXu
    2022年4月17日 08:14
    和语言和框架没有任何关系,不懂喷点在哪?任何成熟的框架和语言面对不同需求和场景都有对应的解决方案,关键在与使用的人的能力和眼界。
    0 0
  • oneisall8955
    2022年4月17日 08:14
    这可不能怪语言。怪公司吧,没有一个运维搞环境安装。不过,开发也应该知道这些,万变不离其宗。做 web 的,不管哪种语言,连接数据库是不是得安装 MySQL/PostgreSQL ?反向代理是不是得安装 Apache 或 Nginx ,而且会反向代理的配置文件?语言换 PHP ,是不是也得安装 fpm 环境? 抱怨这些没有用,这些应该在工作一年内学习或者了解的
    0 0
  • adoal
    2022年4月17日 08:14
    对于完全不懂运维知识又要硬上生产环境的开发人员来说,大部分其它 web 开发语言写的系统到生产环境部署确实比 PHP 复杂。但是要上生产环境,运维知识是避不开的,不论是自己学还是别人学了跟你分工。
    0 0
  • zzm88104
    2022年4月17日 08:14
    Docker 确实减少了很多部署的烦恼……以前每次部署上线我都挺头大的,就一个 nginx 配置文件就把我折磨得掉头发
    0 0
  • cz5424
    2022年4月17日 08:14
    抛弃宝塔,你自己部署一个 php 看看?🤣🤣
    0 0
  • cz5424
    2022年4月17日 08:14
    Docker 并不能绕过配置文件,只是你看不到文件了而已
    0 0
  • seakingii
    2022年4月17日 08:14
    楼主标题不是 django 吗,django 规定了一定要用 mysql 和 nginx? 退一步说,按楼主的帖子内容,静态编译的 EXE 是不是可以直接当 WEB 运行,这就省了 NGINX,省了安装 PYTHON 环境,无数的依赖问题,最后剩下 就是 一个 EXE+MYSQL 的问题了. 如果 EXE + 云数据库 MYSQL,就更简单了不是?
    0 0
  • seakingii
    2022年4月17日 08:14
    而且我回帖也只是针对各种其它需要环境的语言,我不认为我说的不对,GO,RUST 这样静态编译的语言就是方便. .NET 虽然也可以,但目前还略差点意思.
    0 0
  • zzm88104
    2022年4月17日 08:14
    #29 配合 nginx-proxy 这个项目可以自动更新配置文件...新项目只需要配置下新域名就可以 up ,ssl 什么的都是自动搞定。当然用这个方法的第一个项目还是需要一些折腾和学习的时间,后面就很爽了
    0 0
  • chuanqirenwu
    2022年4月17日 08:14
    和 PHP 没有关系吧,最简单的你也只需要一个 uvicon 就可以把 django 应用跑起来。
    0 0
  • Herry001
    2022年4月17日 08:14
    感觉只是单纯的对 Linux 运维不熟悉而已……你要不试下宝塔面板的“Python 项目管理器”?
    0 0
  • me221
    2022年4月17日 08:14
    楼主是学生还是上班族?
    0 0
  • westoy
    2022年4月17日 08:18
    nginx 、mysql 、uwsgi => fpm/spawn-cgi , 部署 php 是一样的步骤啊, 头文件这些 mysqlclient-dev 、php-dev 、python3-dev 这些也一样的, 没什么区别 而且如果你是开发环境,nginx 不用装的,mysql 实际上也不需要, 因为 django 除了 postgresql 是超等公民,mysql 和 sqlite 的 db 接口是一样的, 基于 sqlite 开发就行了......
    0 0
  • westoy
    2022年4月17日 08:27
    nginx 、mysql 、uwsgi => fpm/spawn-cgi , 部署 php 是一样的步骤啊, 头文件这些 mysqlclient-dev 、php-dev 、python3-dev 这些也一样的, 没什么区别 而且如果你是开发环境,nginx 不用装的,mysql 实际上也不需要, 因为 django 除了 postgresql 是超等公民,mysql 和 sqlite 的 db 接口是一样的, 基于 sqlite 开发就行了......
    0 0
  • zeusho871
    2022年4月17日 08:27
    django 部署很简单的。。。MySQL 如果是自己的网站,用宝塔就好了,实在不行用 lnmp 自己改。至于 uwsgi ,那更简单。。。然后设置一下 linux 服务器最大文件打开数和连接数。最不济,还有别人封装好的 docker ,你代码丢进去就可跑。如果这都还觉得麻烦,我推荐你用 golang ,编译出来就是二进制文件,没有部署问题。
    0 0
  • westoy
    2022年4月17日 08:29
    nginx 、mysql 、uwsgi => fpm/spawn-cgi , 部署 php 是一样的步骤啊, 头文件这些 mysqlclient-dev 、php-dev 、python3-dev 这些也一样的, 没什么区别 而且如果你是开发环境,nginx 不用装的,mysql 实际上也不需要, 因为 django 除了 postgresql 是超等公民,mysql 和 sqlite 的 db 接口是一样的, 基于 sqlite 开发就行了......
    0 0
  • westoy
    2022年4月17日 08:55
    nginx 、mysql 、uwsgi => fpm/spawn-cgi , 部署 php 是一样的步骤啊, 头文件这些 mysqlclient-dev 、php-dev 、python3-dev 这些也一样的, 没什么区别 而且如果你是开发环境,nginx 不用装的,mysql 实际上也不需要, 因为 django 除了 postgresql 是超等公民,mysql 和 sqlite 的 db 接口是一样的, 基于 sqlite 开发就行了......
    0 0
  • westoy
    2022年4月17日 09:04
    nginx 、mysql 、uwsgi => fpm/spawn-cgi , 部署 php 是一样的步骤啊, 头文件这些 mysqlclient-dev 、php-dev 、python3-dev 这些也一样的, 没什么区别 而且如果你是开发环境,nginx 不用装的,mysql 实际上也不需要, 因为 django 除了 postgresql 是超等公民,mysql 和 sqlite 的 db 接口是一样的, 基于 sqlite 开发就行了......
    0 0
  • westoy
    2022年4月17日 09:15
    nginx 、mysql 、uwsgi => fpm/spawn-cgi , 部署 php 是一样的步骤啊, 头文件这些 mysqlclient-dev 、php-dev 、python3-dev 这些也一样的, 没什么区别 而且如果你是开发环境,nginx 不用装的,mysql 实际上也不需要, 因为 django 除了 postgresql 是超等公民,mysql 和 sqlite 的 db 接口是一样的, 基于 sqlite 开发就行了......
    0 0
  • LeeReamond
    2022年4月17日 09:15
    到本地可调式为止,静态编译也需要安装相关依赖,这与动态语言依赖无任何区别,只会更加麻烦。你说自身提供服务可以省去 nginx ,那你开心就好,按照你的理论 uswgi 也可以省去 nginx ,甚至不需要 uwsgi 也可以省去 nginx ,甚至 mysql 也可以省了,用 sqlite 不就行了。顺带一提谢谢你的回复,block 了。
    0 0
  • westoy
    2022年4月17日 09:45
    nginx 、mysql 、uwsgi => fpm/spawn-cgi , 部署 php 是一样的步骤啊, 头文件这些 mysqlclient-dev 、php-dev 、python3-dev 这些也一样的, 没什么区别 而且如果你是开发环境,nginx 不用装的,mysql 实际上也不需要, 因为 django 除了 postgresql 是超等公民,mysql 和 sqlite 的 db 接口是一样的, 基于 sqlite 开发就行了......
    0 0
  • seakingii
    2022年4月17日 09:45
    静态部署不需要安装相关依赖,至少极大的减少了依赖,还更麻烦? 自身提供 WEB 服务的多了去了,你的眼里只有 NGINX 是吧? 动不动就 BLOCK,心理太脆弱了
    0 0
  • nash
    2022年4月17日 09:45
    我终于明白为什么干 PHP 的处于鄙视链的低端了,其实真的跟语言无关
    0 0
  • westoy
    2022年4月17日 10:15
    nginx 、mysql 、uwsgi => fpm/spawn-cgi , 部署 php 是一样的步骤啊, 头文件这些 mysqlclient-dev 、php-dev 、python3-dev 这些也一样的, 没什么区别 而且如果你是开发环境,nginx 不用装的,mysql 实际上也不需要, 因为 django 除了 postgresql 是超等公民,mysql 和 sqlite 的 db 接口是一样的, 基于 sqlite 开发就行了......
    0 0
  • qqjt
    2022年4月17日 10:15
    e 这种无数人踩过无数遍的也叫坑?
    0 0
  • westoy
    2022年4月17日 10:45
    nginx 、mysql 、uwsgi => fpm/spawn-cgi , 部署 php 是一样的步骤啊, 头文件这些 mysqlclient-dev 、php-dev 、python3-dev 这些也一样的, 没什么区别 而且如果你是开发环境,nginx 不用装的,mysql 实际上也不需要, 因为 django 除了 postgresql 是超等公民,mysql 和 sqlite 的 db 接口是一样的, 基于 sqlite 开发就行了......
    0 0
  • findex
    2022年4月17日 10:45
    这不就是 django 入门需要做的嘛。python 的优势在于可以做很多复杂逻辑的业务处理,非常强大的 OOP 编程思想。 楼主上面做的只是皮毛,应用部署,你数据库直接用 root 登陆很业余。PHP 连接数据库你也直接用 root 用户对吧。
    0 0
  • westoy
    2022年4月17日 11:15
    nginx 、mysql 、uwsgi => fpm/spawn-cgi , 部署 php 是一样的步骤啊, 头文件这些 mysqlclient-dev 、php-dev 、python3-dev 这些也一样的, 没什么区别 而且如果你是开发环境,nginx 不用装的,mysql 实际上也不需要, 因为 django 除了 postgresql 是超等公民,mysql 和 sqlite 的 db 接口是一样的, 基于 sqlite 开发就行了......
    0 0
  • westoy
    2022年4月17日 11:45
    nginx 、mysql 、uwsgi => fpm/spawn-cgi , 部署 php 是一样的步骤啊, 头文件这些 mysqlclient-dev 、php-dev 、python3-dev 这些也一样的, 没什么区别 而且如果你是开发环境,nginx 不用装的,mysql 实际上也不需要, 因为 django 除了 postgresql 是超等公民,mysql 和 sqlite 的 db 接口是一样的, 基于 sqlite 开发就行了......
    0 0
  • westoy
    2022年4月17日 12:15
    nginx 、mysql 、uwsgi => fpm/spawn-cgi , 部署 php 是一样的步骤啊, 头文件这些 mysqlclient-dev 、php-dev 、python3-dev 这些也一样的, 没什么区别 而且如果你是开发环境,nginx 不用装的,mysql 实际上也不需要, 因为 django 除了 postgresql 是超等公民,mysql 和 sqlite 的 db 接口是一样的, 基于 sqlite 开发就行了......
    0 0
  • westoy
    2022年4月17日 12:45
    nginx 、mysql 、uwsgi => fpm/spawn-cgi , 部署 php 是一样的步骤啊, 头文件这些 mysqlclient-dev 、php-dev 、python3-dev 这些也一样的, 没什么区别 而且如果你是开发环境,nginx 不用装的,mysql 实际上也不需要, 因为 django 除了 postgresql 是超等公民,mysql 和 sqlite 的 db 接口是一样的, 基于 sqlite 开发就行了......
    0 0
  • maloneleo88
    maloneleo88 (楼主)
    2022年4月17日 12:45
    宝塔那个管理器试了 根本不好使 ,感觉好烂,原理是什么? 通过管理器装的在系统里都找不到 @ 封装好的 docker 这个很感兴趣!!! @ 有这东西吗? @ 哈哈 @ @ 好的 沉了吧,不要吵, 肯定是我菜。 不是工作就是爱好。 有时间就弄弄
    0 0
  • westoy
    2022年4月17日 13:15
    nginx 、mysql 、uwsgi => fpm/spawn-cgi , 部署 php 是一样的步骤啊, 头文件这些 mysqlclient-dev 、php-dev 、python3-dev 这些也一样的, 没什么区别 而且如果你是开发环境,nginx 不用装的,mysql 实际上也不需要, 因为 django 除了 postgresql 是超等公民,mysql 和 sqlite 的 db 接口是一样的, 基于 sqlite 开发就行了......
    0 0
  • westoy
    2022年4月17日 13:45
    nginx 、mysql 、uwsgi => fpm/spawn-cgi , 部署 php 是一样的步骤啊, 头文件这些 mysqlclient-dev 、php-dev 、python3-dev 这些也一样的, 没什么区别 而且如果你是开发环境,nginx 不用装的,mysql 实际上也不需要, 因为 django 除了 postgresql 是超等公民,mysql 和 sqlite 的 db 接口是一样的, 基于 sqlite 开发就行了......
    0 0
  • westoy
    2022年4月17日 14:15
    nginx 、mysql 、uwsgi => fpm/spawn-cgi , 部署 php 是一样的步骤啊, 头文件这些 mysqlclient-dev 、php-dev 、python3-dev 这些也一样的, 没什么区别 而且如果你是开发环境,nginx 不用装的,mysql 实际上也不需要, 因为 django 除了 postgresql 是超等公民,mysql 和 sqlite 的 db 接口是一样的, 基于 sqlite 开发就行了......
    0 0