程序员最近都爱上了这个网站  程序员们快来瞅瞅吧!  it98k网:it98k.com

本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长

+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

暂无数据

Error when try run the command: alembic revision --autogenerate -m "description"

发布于2025-01-02 16:55     阅读(155)     评论(0)     点赞(9)     收藏(1)


I have an aplication with two containers, one of then has my database. When i try run the alembic command alembic revision --autogenerate -m "create cases table" to update migrations i'm getting the following error:

sqlalchemy.exc.OperationalError: (psycopg.OperationalError) [Errno -3] Temporary failure in name resolution
(Background on this error at: https://sqlalche.me/e/20/e3q8)

In the file alembic.ini the variable sqlalchemy.url is configured to get the database url through environment variable.

file env.py

config.set_main_option('sqlalchemy.url', Settings().DATABASE_URL)

file .env

DATABASE_URL=postgresql+psycopg://app_user:app_password@giatros_db:5432/app_db
POSTGRES_USER=app_user
POSTGRES_DB=app_db
POSTGRES_PASSWORD=app_password

I need understand why is this error occuring and help to find a solution.


解决方案


You might be running the alembic command from a local terminal.

In the env file, it is mentioned that the database is available at giatros_db. But when running locally, giatros_db is not resolved.

This can be fixed by:

  1. overriding the DATABASE_URL before running the alembic command:

    export DATABASE_URL="postgresql+psycopg://app_user:app_password@localhost:5432/app_db"
    alembic revision --autogenerate -m "create cases table"
    

    or override for the command

    DATABASE_URL="postgresql+psycopg://app_user:app_password@localhost:5432/app_db" alembic revision --autogenerate -m "create cases table"
    
  2. running the alembic command inside the container

    docker exec -it <container_name_or_id> alembic revision --autogenerate -m "create cases table"
    

Notice that the server name in the DATABASE_URL has been changed from giatros_db to localhost.



所属网站分类: 技术文章 > 问答

作者:黑洞官方问答小能手

链接:https://www.pythonheidong.com/blog/article/2046697/313457a01b02d461486a/

来源:python黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

9 0
收藏该文
已收藏

评论内容:(最多支持255个字符)