sql >> データベース >  >> RDS >> PostgreSQL

Dockerを使用したnodeJSでのPostgresのECONNREFUSED

    DATABASE_URL 127.0.0.1を指します 、これはループバックアダプタです(詳細はこちら)。これは「自分自身につながる」という意味です。

    同じホストで両方のアプリケーションを(Dockerを使用せずに)実行すると、両方とも同じアダプター(localhostとも呼ばれます)でアドレス指定できます。 。

    コンテナで両方のアプリケーションを実行する場合、以前のように両方がローカルホスト上にあるわけではありません。代わりに、webをポイントする必要があります dbへのコンテナ docker0上のコンテナのIPアドレス アダプター-docker-compose あなたのためのセット。

    変更:

    127.0.0.1 CONTAINER_NAMEへ (例:db

    例:

    DATABASE_URL: postgres://username:[email protected]:5432/mydatabase
    

    DATABASE_URL: postgres://username:[email protected]:5432/mydatabase
    

    これはDockerリンクのおかげで機能します:web コンテナにはファイルがあります(/etc/hostsdbを使用 dbが指定するIPを指すエントリ コンテナがオンになっています。これは、ホスト名を解決しようとしたときにシステム(この場合はコンテナー)が最初に確認する場所です。



    1. ストアドプロシージャ関数の動的テーブル名

    2. MySQLでフィールドがnullの場合は0を返します

    3. MySQL、MariaDB、Oracle、PostgreSQL、DB2、およびSQLiteでテーブルを複製、コピー、またはバックアップし、SQLとしてテーブルを作成します

    4. パラメーター化されたクエリは、提供されなかったパラメーターを予期します