Данные приложения Django не сохраняются для развертывания

#django #docker #dockerfile

Вопрос:

В настоящее время разрабатывается приложение Django для развертывания на цифровой капле океана. На этой капле есть 4 контейнера docker для: PostgreSQL, PGADMIN4, приложения Django, Certbot.

В Django Admin (локальный хост) я добавил некоторые значения в свою базу данных, и они будут отображаться во всем веб-приложении. Однако, когда я развертываю свое приложение Django в digital ocean droplet, этих данных нигде не видно. Я читал, что могу создать файл дампа sql из своей локальной базы данных и таким образом получить значения в моей капле. Но я предпочел бы другой способ, если это возможно.

Я делал этот процесс раньше, но я использовал базу данных postgis, которая поставляется с предварительно созданной базой данных, тогда как теперь мне нужно снова создать базу данных в моем контейнере postgresql (локально и на droplet).

Я создаю изображение своего приложения Django с помощью файла Docker, который затем отправляю на dockerhub и переношу в свою цифровую каплю океана.

Любая помощь будет признательна.

Докерфайл

 ##
## Dockerfile to generate a Docker image
##

# Start from an existing image with Python 3.8 installed
FROM python:3.8

MAINTAINER Mark Foley

# Run a series of Linux commands to ensure that
# 1. Everything is up-to-date and
RUN apt-get -y update amp;amp; apt-get -y upgrade

# Make a working directoir in the image and set it as working dir.
RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app

# make sure that pip amp; setuptools are installed and to date
RUN pip install --upgrade pip setuptools wheel

# You should have already exported your Python library reuirements to a "requiremnts.txt" file using pip.
# Now copy this to the image and install everything in it.
COPY requirements.txt /usr/src/app
RUN pip install -r requirements.txt

# Copy everything in your Django project to the image.
COPY . /usr/src/app

# Make sure that static files are up to date and available
RUN python manage.py collectstatic --no-input

# Expose port 8001 on the image. We'll map a localhost port to this later.
EXPOSE 8001

# Run "uwsgi". uWSGI is a Web Server Gateway Interface (WSGI) server implementation that is typically used to run Python
# web applications.
CMD ["uwsgi", "--ini", "uwsgi.ini"]