标签: django-deployment

在生产服务器中部署django

首先,请让我明白我是一个Windows用户,对网络世界来说是一个新手.在过去的几个月里,我一直在学习python和django,对我来说这是一次很棒的经历.现在我以某种方式创建了一个我希望在生产服务器中部署的小项目.由于django有内置的开发服务器,所以对我没有问题.但现在我必须将它部署到生产服务器上,我用Google搜索并发现Nginx + uWSGI或Nginx + Gunicorn是它的最佳选择.由于uWSGI和Gunicord与Windows不兼容,我认为我应该适应Ubuntu或其他Unix系统.

所以我的问题是:

  1. 为了清楚起见,因为我将不得不使用上述其中一个,请向我解释为什么我需要两台服务器?
  2. 如果我必须适应Ubuntu环境,我是否必须学习Ubuntu shell脚本,SSH和其他东西?或托管服务提供商会帮助我做到这一点?
  3. 请让我知道上述有关我还需要什么.

非常感谢你的时间,如果我的问题是一个蹩脚的问题,请原谅.希望得到积极回应的答案.

django web-deployment uwsgi gunicorn django-deployment

18
推荐指数
1
解决办法
1万
查看次数

django nginx静态文件404

这是我的设置:

STATIC_URL = '/static/'

STATICFILES_DIRS = (
    os.path.join(BASE_DIR, "static"),
)

STATIC_ROOT = '/home/django-projects/tshirtnation/staticfiles'
Run Code Online (Sandbox Code Playgroud)

这是我的nginx配置:

server {
    server_name 77.241.197.95;

    access_log off;

    location /static/ {
        alias /home/django-projects/tshirtnation/staticfiles/;
    }

    location / {
        proxy_pass http://127.0.0.1:8001;
        proxy_set_header X-Forwarded-Host $server_name;
        proxy_set_header X-Real-IP $remote_addr;
        add_header P3P 'CP="ALL DSP COR PSAa PSDa OUR NOR ONL UNI COM NAV"';
    }
}
Run Code Online (Sandbox Code Playgroud)

我跑了python manage.py collectstatic,它已经复制了所有静态文件.我使用gunicorn_django --bind:my-ip:8001运行我的服务器,除静态文件外,一切似乎都在工作.

编辑:我跑了

sudo tail /var/log/nginx/error.log
Run Code Online (Sandbox Code Playgroud)

似乎没有找到静态文件的错误:/

python django nginx django-deployment

15
推荐指数
3
解决办法
1万
查看次数

如何向Django Celery Flower Monitoring添加身份验证和端点?

我一直在本地使用花,它似乎很容易设置和运行,但我看不出如何在生产环境中设置它.

特别是,如何添加身份验证以及如何定义访问它的URL?

django celery django-celery django-deployment flower

14
推荐指数
1
解决办法
4974
查看次数

django- nginx:[emerg] open()"/ etc/nginx/proxy_params"在/ etc/nginx/sites-enabled/myproject中失败(2:没有这样的文件或目录):11

我尝试使用本教程与Nginx和Gunicorn一起部署django项目.我做了所有的待办事项但是,当我/etc/nginx/sites-available/myproject使用以下代码创建文件时:

server {
listen 80;
server_name server_domain_or_IP;

location = /favicon.ico { access_log off; log_not_found off; }
location /static/ {
    root /home/sammy/myproject;
}

location / {
    include proxy_params;
    proxy_pass http://unix:/home/sammy/myproject/myproject.sock;
 }
}
Run Code Online (Sandbox Code Playgroud)

然后运行sudo nginx -t查找错误,我收到此错误:

nginx: [emerg] open() "/etc/nginx/proxy_params" failed (2: No such file or directory) in /etc/nginx/sites-enabled/myproject:11
nginx: configuration file /etc/nginx/nginx.conf test failed
Run Code Online (Sandbox Code Playgroud)

有什么问题??以及如何解决?坦

django django-deployment

12
推荐指数
1
解决办法
8875
查看次数

部署Django:你是怎么做到的?

我曾尝试过像这样的指南,但它对我来说没有用.

所以我的问题是:什么是部署Django的好指南,以及如何部署Django.

我一直听说capastrano非常好用,但我不知道如何使用它或它做什么(除了部署代码的自动化),或者即使我想要/需要使用它.

python django-deployment

11
推荐指数
2
解决办法
1498
查看次数

Django Gunicorn没有加载静态文件

我正在尝试用gunicorn和nginx部署我的django项目,但我需要一些帮助.当我编码gunicorn myproject.wsgi:应用程序我设法在localhost页面看到我的网站,但没有任何CSS.为什么gunicorn不加载我的项目的静态文件夹中的css文件?

Guinicorn_start脚本:https ://dpaste.de/TAc4 Gunicorn 输出:https://dpaste.de/C6YX

css python django gunicorn django-deployment

10
推荐指数
1
解决办法
1万
查看次数

错误:: --system 旨在用于预先存在的 Pipfile 安装,而不是特定软件包的安装。正在中止

我完成了我的 django 项目。并且 \xc4\xb1 想要在 aws 上部署我的项目。我从 github 拉取我的项目,然后在 aws(ubuntu) 上的虚拟计算机上运行 pipelinenv install,我每次都会收到此错误。

\n
ERROR:: --system is intended to be used for pre-existing Pipfile installation, not installation of specific packages. Aborting.\n
Run Code Online (Sandbox Code Playgroud)\n

我该如何解决这个问题

\n

django ubuntu amazon-web-services django-deployment pipenv

10
推荐指数
4
解决办法
9982
查看次数

芹菜工人和节拍负荷在一个命令

有没有办法启动芹菜工人并在一个命令中击败?我想在使用Fabric的自动部署过程中添加芹菜.

我目前正在运行:

celery -A prj worker -B
Run Code Online (Sandbox Code Playgroud)

其次是

celery -A prj beat -l info -S django
Run Code Online (Sandbox Code Playgroud)

但是,第一个命令启动worker,并且不允许运行下一个命令(启动节拍),因为出现了worker启动消息.

有没有办法避免出现启动消息?或者在一个命令中执行这两个操作?也许有一种方法可以从我的Django配置启动这些?

谢谢!

celery django-celery celerybeat django-deployment

7
推荐指数
2
解决办法
6370
查看次数

git push Heroku main - 错误:src refspec main 与任何内容都不匹配

我只是想按照 heroku 网站的步骤进行操作。但在我的控制台上,当我 git Push 到 heroku main 时?那是行不通的。

显示一些错误。像下面这样。

C:\Users\TORU\Desktop\Website Again\Python\django_files\hero\hero_con>git push heroku main
error: src refspec main does not match any
error: failed to push some refs to 'https://git.heroku.com/secure-taiga-84539.git'
Run Code Online (Sandbox Code Playgroud)

我现在应该做什么??

git deployment django heroku django-deployment

7
推荐指数
1
解决办法
4927
查看次数

return database_name == ':memory:' or 'mode=memory' in database_name TypeError: 'PosixPath' 类型的参数不可迭代

我正在用 django 制作一个 webapp。我尝试将它部署在 pythonanywhere 上,一切正常,但最后当我尝试使用python manage.py collectstatic它收集静态文件时,出现了以下错误:

return database_name == ':memory:' or 'mode=memory' in database_name
TypeError: argument of type 'PosixPath' is not iterable
Run Code Online (Sandbox Code Playgroud)

提出一些想法,我该如何解决它。

这是我的 setting.py 文件

import os
from pathlib import Path

# Build paths inside the project like this: BASE_DIR / 'subdir'.
BASE_DIR = Path(__file__).resolve().parent.parent


# Quick-start development settings - unsuitable for production
# See https://docs.djangoproject.com/en/3.1/howto/deployment/checklist/

# SECURITY WARNING: keep the secret key used in production secret!
SECRET_KEY = '!25%rdt-$_$bsc*fl)e7x2*x6awjca^3_2t-k@l0tu*8k!f33&'

# SECURITY WARNING: don't run …
Run Code Online (Sandbox Code Playgroud)

python django django-deployment

6
推荐指数
3
解决办法
2350
查看次数