【docker】单容器部署Django + Uwsgi-20220320

容器文件结构

【docker】单容器部署Django + Uwsgi-20220320
【docker】单容器部署Django + Uwsgi-20220320

; 作业顺序

生成images

  • 把uwsgi.ini放进去images文件包里
[uwsgi]
project=training_system

base=/code/package

chdir=%(base)/%(project)
module=%(project).wsgi:application
master=True
processes=2

http=0.0.0.0:8000
buffer-size=65536

pidfile=/tmp/%(project)-master.pid
vacuum=True
max-requests=5000
daemonize=/tmp/%(project)-uwsgi.log

harakiri=60

harakiri-verbose=true
  • 记得修改settings.py设定

STATIC_URL = '/static/'
STATICFILES_DIRS = (
    os.path.join(BASE_DIR, "static"),
)
STATIC_ROOT = os.path.join(BASE_DIR, "/static/")
  • start.sh 编写(其实也可以叫runserver-docker.sh之类的)

python manage.py collectstatic --noinput&&
python manage.py makemigrations&&
python manage.py migrate&&

uwsgi --ini uwsgi.ini

(uwsgi –ini uwsgi.ini有可能会报错,下面再解决这个问题)

  • 修改dockfile不要直接启动应用,等容器启动后我们再手动启动应用
FROM python:3.8-slim
COPY ./Django /code
WORKDIR /code/package
RUN pip install -r requirements.txt
RUN chmod 777 /code/package/runserver-docker.sh
EXPOSE 8000

  • 生成images
docker build -t training_dashboard_v2b_uwsgi .

进入容器安装uwsgi包

可参考我的文章【docker】如何在docker中安装uwsgi包

  • 主要指令如下:
docker exec -it < container > /bin/bash

apt-get update

apt-get install gcc

pip install uwsgi

(可选)进入容器,手动实现uwsgi初始化

start.sh 中uwsgi –ini uwsgi.ini有可能会报错,故可进入容器,手动实现uwsgi初始化。

uwsgi --ini uwsgi.ini

uwsgi初始化成功显示[uWSGI] getting INI configuration from uwsgi.ini

参考链接

原创Docker部署Django由浅入深系列(上):单容器部署Django + Uwsgi

Original: https://blog.csdn.net/m0_46629123/article/details/123607272
Author: i see the future
Title: 【docker】单容器部署Django + Uwsgi-20220320

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/734036/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 重大发现,AQS加锁机制竟然跟Synchronized有惊人的相似

    在并发多线程的情况下,为了保证数据安全性,一般我们会对数据进行加锁,通常使用 Synchronized或者 ReentrantLock同步锁。 Synchronized是基于JVM…

    Python 2023年10月15日
    057
  • pandas快速入门指南

    Pandas 是一个开源的第三方 Python 库,从 Numpy 和 Matplotlib 的基础上构建而来,享有数据分析”三剑客之一”的盛名(NumPy…

    Python 2023年8月8日
    056
  • 一名七年老安卓的 2022 总结

    大家好,我是 shixin。 一转眼到了 2022 的最后一天,今年发生了很多事,这篇文章来总结一下。 长短期目标达成情况 和去年一样,我的 长期目标是成为具备创业能力的人,包括商…

    Python 2023年11月4日
    045
  • ubuntu18.04更换apt源为阿里源

    备份原始source.list cp /etc/apt/sources.list /etc/apt/sources.list.back 更新sources内容 deb http:/…

    Python 2023年6月6日
    086
  • YOLOv7-Pose尝鲜,基于YOLOv7的关键点模型测评

    【前言】 本文首发于GiantPandaCV,未经许可请勿转载!目前人体姿态估计总体分为Top-down和Bottom-up两种,与目标检测不同,无论是基于热力图或是基于检测器处理…

    Python 2023年9月30日
    061
  • 10 个杀手级的 Python 自动化脚本

    重复性任务总是耗时且无聊,想一想你想要一张一张地裁剪 100 张照片或 Fetch API、纠正拼写和语法等工作,所有这些任务都很耗时,为什么不自动化它们呢?在今天的文章中,我将与…

    Python 2023年9月26日
    034
  • 跑深度学习CV的代码的常用包安装

    写这一篇文章的初衷是记录一下自己配环境中所有的安装包的安装方式 因为有的包需要特定的安装方法,每次安装都搜一遍教程太过于折磨,仅记录方便日后查找 这三个需要仔细安装,否则版本不合适…

    Python 2023年8月29日
    040
  • AI 揭晓答案,2022世界杯冠军已出炉

    卡塔尔世界杯,究竟谁能捧起大力神杯,就让我们用机器学习预测一下吧! 文章目录 * – 数据源 – 技术提升 – 数据集构建 – 功能…

    Python 2023年9月27日
    040
  • 【Logback+Spring-Aop】实现全面生态化的全链路日志追踪系统服务插件「Logback-MDC篇」

    日志追踪 日志追踪对于功能问题的排查和数据流转的路径分析时非常重要的,有了全链路日志追踪体系机制可以非常有效且快速的定位问题,但在多线程环境中,若没有相关成熟的框架的支持,想要实现…

    Python 2023年10月14日
    066
  • gtest学习教程(从0到1)

    gtest使用教程 1 简介 之前对gtest一无所知,最近,找了些相关的资料,学习了下.这里主要记录了学习过程和相关知识点. 什么是gtest: gtest测试框架是在不同平台上…

    Python 2023年10月12日
    046
  • Python推导式创建数列的方法

    列表推导式生成列表对象,语法如下: ”’ [表达式 for item in 可迭代对象] 或者 [表达式 for item in 可迭代对象 if 条件判断] ”’ l1 = …

    Python 2023年10月31日
    051
  • 分享60个PHP源码,总有一款适合您

    PHP源码 分享60个PHP源码,总有一款适合您 下面是文件的名字,我放了一些图片,文章里不是所有的图主要是放不下…, 60个PHP源码下载链接:https://pan…

    Python 2023年11月6日
    034
  • python dataframe去除重复项_pandas dataframe重复数据查看.判断.去重

    本文详解如何使用pandas查看dataframe的重复数据,判断是否重复,以及如何去重 dataframe数据样本: import pandas as pd df = pd.Da…

    Python 2023年8月16日
    067
  • 【合集】笔者送给读者的话

    当同学们看到这页博客,那么恭喜你们,你们已经踏上了一条前程似锦却又辛苦无比的路 可能同学们幻想中的程序员是这样的 工资高,待遇好,技术黑客。 *高收入低消费,动不动就两三十万,年收…

    Python 2023年6月10日
    065
  • python爬虫之xpath解析

    Xpath 是一种用在XML文档中定位元素的语言,且支持html元素的解析。 Xpath本质是通过路径来查找html中的元素。 相关语法 表达式说明/从根节点开始//从任意节点开始…

    Python 2023年10月1日
    046
  • 《机器学习》学习笔记

    第 2 章 模型评估与选择 2.1 经验误差与过拟合 2.2 评估方法 2.2.1 留出法 2.2.2 交查验证法 2.2.3 自助法 2.2.4 调参与最终模型 2.3 性能度量…

    Python 2023年10月27日
    040
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球