Сохранение данных celery в postgresql

Я пытаюсь развернуть проект django, который собирает данные каждые несколько минут и обновляет кэш redis и данные postgresql. Я использовал задачи celery и django_celery_beat для этого, и это отлично работало в разработке, но когда я хочу автоматизировать celery worker и beat в фоновом режиме и сохранить данные в postgres, я получаю эту ошибку в логах:

[2022-01-07 18:15:17,012: WARNING/MainProcess] django.db.utils
[2022-01-07 18:15:17,012: WARNING/MainProcess] .
[2022-01-07 18:15:17,012: WARNING/MainProcess] OperationalError
[2022-01-07 18:15:17,012: WARNING/MainProcess] : 
[2022-01-07 18:15:17,012: WARNING/MainProcess] connection to server at "127.0.0.1", port 5432 failed: fe_sendauth: no password supplied

celery.py:

import os
from celery import Celery

# Set the default Django settings module for the 'celery' program.
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'personal_website.settings')
app = Celery('personal_website')
app.config_from_object('django.conf:settings', namespace='CELERY')
app.autodiscover_tasks()

@app.task(bind=True)
def debug_task(self):
    print(f'Request: {self.request!r}')

tasks.py:

from celery import shared_task
from .currency_scraper import get_prices
from .models import Currency
from django.core.cache import cache

@shared_task
    def update_prices():
    """
    Updates currency model prices using get_prices function.
    """
    prices = get_prices()

    if prices:
        for name, price in prices.items():
            try:
                old_price = Currency.objects.get(name=name)
                old_price.price = price
                old_price.save()
                cache.set(name, price, None)
            except Currency.DoesNotExist:
                Currency.objects.create(name=name, price=price)
                cache.set(name, price, None)

Я понимаю ошибку, но не знаю, как аутентифицироваться в postgresql с помощью celery. Я использую supervisor для запуска celery и beat в ubuntu.

Вернуться на верх