I'd consider updating your docker-compose.yaml to version 3.x and use the container_name item to force a name on your container.
Then, in your ENV file, use whatever you set that container_name to DB_HOST. I understand why you're trying to use localhost, but if all of these containers are on one Docker network, they'll want to refer to each other by their container names.
I am using a package called Sequelize for connecting to the DB and here is how :
Running
docker-compose upproduces this error :Unhandled rejection SequelizeConnectionRefusedError: connect ECONNREFUSED 127.0.0.1:3306Could it be that the DB is not yet up and running?
I mean, could be. Have you tried using Kitematic or
docker exec -it <container name> /bin/bash?Also, what is your output for
docker ps -awhen you have your compose file spun up?Edit: I see a couple things that could be at fault here, but I want to see the answer to those two questions before I take a stab at it. ^
I'd consider updating your docker-compose.yaml to version 3.x and use the container_name item to force a name on your container.
Then, in your ENV file, use whatever you set that container_name to DB_HOST. I understand why you're trying to use localhost, but if all of these containers are on one Docker network, they'll want to refer to each other by their container names.
I feel like i need to have a better understanding of docker.
Definitely will try doing that and will update you.
We all start somewhere, my dude. :)