Настройка СУБД Postgres для Django с помощью Fly.io
Я новичок, пытаюсь создать свой первый веб-апп с помощью комбинации Fly.io, Django и БД postgres, но у меня возникли проблемы, и я не могу найти ответ в руководствах или Q&A.
Я создал простое Django-приложение "Hello world" (models.py пока пуст) и пытаюсь запустить все компоненты, прежде чем создавать его дальше.
- Я успешно развернул свое приложение на Fly.io без ошибок
- Я создал кластер postgres на Fly.io, используя инструкции здесь: https://fly.io/docs/postgres/ .
- Я присоединил кластер к моему приложению, которое создает БД и устанавливает переменную окружения с соответствующими деталями (имя пользователя, пароль, порт, хост, имя dbname)
- Я обновил свой файл settings.py:
DATABASES = {} DATABASES["default"] = dj_database_url.config(conn_max_age=600, ssl_require=True)
- Я добавил в свой fly.toml:
[[services]] internal_port = 5432 # Postgres instance protocol = "tcp" # Open port 10000 for plaintext connections. [[services.ports]] handlers = [] port = 10000
- Я подтвердил, что могу войти в оболочку psql с помощью
flyctl postgres connect -a MYAPP-pg
Но, к сожалению, когда я запускаю python manage.py migrate
, чтобы проверить, что все работает, я получаю следующую ошибку:
File "<my_path>\venv\lib\site-packages\django\db\backends\base\base.py", line 282, in ensure_connection
self.connect()
File "<my_path>\venv\lib\site-packages\django\utils\asyncio.py", line 26, in inner
return func(*args, **kwargs)
File "<my_path>\venv\lib\site-packages\django\db\backends\base\base.py", line 263, in connect
self.connection = self.get_new_connection(conn_params)
File "<my_path>\venv\lib\site-packages\django\utils\asyncio.py", line 26, in inner
return func(*args, **kwargs)
File "<my_path>\venv\lib\site-packages\django\db\backends\postgresql\base.py", line 215, in get_new_connection
connection = Database.connect(**conn_params)
File "<my_path>\venv\lib\site-packages\psycopg2\__init__.py", line 122, in connect
conn = _connect(dsn, connection_factory=connection_factory, **kwasync)
psycopg2.OperationalError: could not translate host name "top2.nearest.of.MYAPP-pg.internal" to address: Unknown host
Есть идеи, что может происходить? Любая помощь будет очень признательна!