-
Notifications
You must be signed in to change notification settings - Fork 164
Description
Description:
There is an inconsistency in the DATABASE_URL
configuration between the Docker setup instructions and the .env.example
files in the repository, which may cause issues when booting up the application.
Steps to Reproduce:
-
Follow the Docker setup instructions in the
README.md
:docker run -d \ --name muzer-db \ -e POSTGRES_USER=myuser \ -e POSTGRES_PASSWORD=mypassword \ -e POSTGRES_DB=mydatabase \ -p 5432:5432 \ postgres
In this setup, the
POSTGRES_USER
is set tomyuser
andPOSTGRES_PASSWORD
is set tomypassword
. -
Compare the
DATABASE_URL
in the.env.example
files for bothnext-app
andws
folders:DATABASE_URL=postgresql://postgres:postgres@postgres:5432/postgres
Problems:
-
Inconsistent Credentials:
The Docker setup usesmyuser
andmypassword
, whereas the.env.example
file usespostgres
for both the username and password. This inconsistency can lead to authentication errors when starting the application, as theDATABASE_URL
won't match the credentials defined in the Docker container. -
Hostname Mismatch:
The.env.example
files usepostgres
as the host (@postgres:5432
), assuming the application is being run inside a Docker network. However, when not using Docker, the hostname should belocalhost
:DATABASE_URL=postgresql://postgres:postgres@localhost:5432/postgres
This causes a problem for users who are not using Docker, as the application tries to connect to
postgres
instead oflocalhost
.
Proposed Solutions:
-
Update the Docker instructions in the
README.md
to match the.env.example
file, using:docker run -d \ --name muzer-db \ -e POSTGRES_USER=postgres \ -e POSTGRES_PASSWORD=postgres \ -e POSTGRES_DB=postgres \ -p 5432:5432 \ postgres
-
Modify the
.env.example
file to include a note or conditional configuration for users who are not using Docker, ensuring they switch the host tolocalhost
:# When using Docker, use the 'postgres' hostname # DATABASE_URL=postgresql://postgres:postgres@postgres:5432/postgres # For non-Docker setups, use 'localhost' DATABASE_URL=postgresql://postgres:postgres@localhost:5432/postgres
Additional Information:
- The mismatch between
localhost
andpostgres
creates boot-up errors for users who are not running the database in a Docker network. - Providing clear instructions for both Docker and non-Docker setups would improve the developer experience and reduce confusion.
Please let me know if any further clarification is needed!