DEV Community

Discussion on: Running React and Node.js in one shot with Docker!

 
numtostr profile image
Vikas Raj

I don't know what's the issue. If you can share the code. I can look and fix it.

Thread Thread
 
boffti profile image
Aneesh Melkot
Thread Thread
 
numtostr profile image
Vikas Raj

Your app looks fine. Please check that the PORT variable is set 5000 as you are also loading variables from .env file

Thread Thread
 
boffti profile image
Aneesh Melkot

Yeah bro, everything seems to be in order but I am not able to make requests to the Server container. Proxy is set correctly, PORT variables are set correctly. Dunno what seems to be the issue. It's working fine during localhost without the containers. Its also deployed on Heroku where it's working fine.

Thread Thread
 
numtostr profile image
Vikas Raj

What machine do you use for development?

Thread Thread
 
boffti profile image
Aneesh Melkot

Hey found the solution man. Instead of "proxy": "localhost:5000", I replaced localhost with the Server's Docker service name from the docker-compose file. Now it looks something like this "proxy": "cfy_server:5000". It's working.

Thread Thread
 
numtostr profile image
Vikas Raj • Edited

Bro. I seriously forgot about that. Awesome you found the issue.

Thanks for the heads up. I updated the post. I am amazed that no one encountered this issue before.

Thread Thread
 
misterhtmlcss profile image
Roger K. • Edited

I came across this article because I am looking for a semi-unrelated react/express docker-compose issue that you solved via the above eg. http://docker-compose-service_name:xxxx.

No one anywhere said I needed to use my service name instead of localhost, but you did. Thank you for your post!

PS I included for entertainment my docker-compose file because they look almost identical, yet I didn't even come hear for help with that file; it was already finished. I came only for the package for the proxy fix.

version: '3.8'

services:
  server:
    image: ads/node-express
    container_name: ads-server
    build:
      context: ./server
      dockerfile: Dockerfile.dev
    ports:
      - "5000:5000"
    volumes:
      - ./server:/src/app
      - /src/app/node_modules
    restart: always
  client:
    image: ads/react
    stdin_open: true
    container_name: ads-client
    build:
      context: ./client
      dockerfile: Dockerfile.dev
    ports:
      - "3000:3000"
    volumes:
      - ./client:/src/app
      - /src/app/node_modules
    restart: always