【问题标题】:django uwsgi logto function not work in dockerdjango uwsgi logto 功能在 docker 中不起作用
【发布时间】:2021-04-12 09:34:34
【问题描述】:

使用 uwsgi 对 django 应用程序进行 dockerizing

uwsgi.ini

[uwsgi]
chdir = /app
http = :12345
socket=127.0.0.1:8002
wsgi-file=leak/wsgi.py
static-map = /static=static
processes=4
threads=2
master=True
log-master = true
threaded-logger = true
logto=/var/log/leak.log
log-maxsize = 100000
threaded-logger = true
pidfile=uwsgi.pid
env = DJANGO_SETTINGS_MODULE=leak.settings.development

Dockerfile

FROM python:3.6.8-alpine
COPY requirements /app/requirements
WORKDIR /app
RUN apk update 
        && apk add make \
        && apk add --virtual mysqlclient-build gcc python3-dev musl-dev \
        && apk add --no-cache mariadb-dev \
        && apk add --virtual system-build linux-headers libffi-dev \
        && apk add --no-cache jpeg-dev zlib-dev freetype-dev lcms2-dev openjpeg-dev tiff-dev tk-dev tcl-dev \
        && apk add --no-cache bash bash-doc bash-completion libxml2-dev libxslt-dev \
        && pip install --upgrade pip setuptools wheel \
        && pip install -r requirements
COPY . /app 
CMD ["sh","run.sh"]

run.sh

#!/usr/bin/env sh
uwsgi --ini uwsgi.ini

在 docker build && docker run 后,日志路径“/var/log/leak.log”没有创建并且没有任何错误。 但它没有码头工人。 我该如何解决它

【问题讨论】:

    标签: django docker uwsgi


    【解决方案1】:

    一些建议:

    • 不要以 root 身份运行 uwsgi
    • threaded-logger = true 被定义了 2 次​​li>
    • 登录/app/log,并将其挂载为一个卷,并为用户提供适当的权限
    • alpine 镜像可以运行#!/bin/sh

    问候,matzy

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-04-07
      • 1970-01-01
      相关资源
      最近更新 更多