0

I used docker and have nginx as a reverse proxy with just 80 and 443 ports exposed on host machine. I also have other containers and nginx under same network with bridge driver. The problem is I am unable to curl/ping host machine IP from inside docker container. I can access other containers with local DNS though. Please help.

DOCKER-COMPOSE FILE

version: "3"

services:
  mongo:
    image: mongo
    container_name: mongo
    environment:
      - MONGO_INITDB_ROOT_USERNAME=rootmongo
      - MONGO_INITDB_ROOT_PASSWORD=p4Ss@1234#
    # For Persistance
    volumes:
      - db_data:/data/db
      - db_backup:/backup
      - db_dump:/dump
    restart: always
    networks:
      - app-network

  wealth_advisor_admin:
    build:
      context: ./adminpanel
      dockerfile: Dockerfile
    image: wealth_advisor_admin
    depends_on:
      - mongo
    restart: unless-stopped
    container_name: wealth_advisor_admin
    networks:
      - app-network


  wealth_advisor_web:
    build:
      context: .
      dockerfile: Dockerfile
    image: wealth_advisor_web
    container_name: wealth_advisor_web
    restart: unless-stopped
    depends_on:
      - mongo
    networks:
      - app-network


  webserver:
    image: nginx:mainline-alpine
    container_name: webserver
    restart: unless-stopped
    ports:
      - "80:80"
      - "443:443"
    volumes:
      - web-root:/var/www/html
      - ./nginx-conf:/etc/nginx/conf.d
      - certbot-etc:/etc/letsencrypt
      - certbot-var:/var/lib/letsencrypt
      - dhparam:/etc/ssl/certs
    depends_on:
      - wealth_advisor_web
      - wealth_advisor_admin
    networks:
      - app-network

  certbot:
    image: certbot/certbot
    container_name: certbot
    volumes:
      - certbot-etc:/etc/letsencrypt
      - certbot-var:/var/lib/letsencrypt
      - web-root:/var/www/html
    depends_on:
      - wealth_advisor_web
    command: ---------------

volumes:
  certbot-etc:
  web-root:
  certbot-var:
  db_data:
  db_backup:
  db_dump:
  dhparam:
    driver: local
    driver_opts:
      type: none
      device: /root/trade/dhparam/
      o: bind

networks:
  app-network:
    driver: bridge
Aseem Regmi
  • 1
  • 1
  • 1
  • Please post your docker-compose.yml file – aminits Nov 03 '20 at 08:10
  • Have updated the docker-compose file – Aseem Regmi Nov 03 '20 at 08:46
  • Does this answer your question? [From inside of a Docker container, how do I connect to the localhost of the machine?](https://stackoverflow.com/questions/24319662/from-inside-of-a-docker-container-how-do-i-connect-to-the-localhost-of-the-mach) – Don't Panic Nov 03 '20 at 08:49
  • No, it doesn't. Actually what I need is, suppose my ip is xxx.xxx.xxx.xxx, and I have domain abc.xyz pointed to that IP and use nginx as reverse proxy to pass requests to node.js container. Now from node.js container I can't ping/curl to abc.xyz. I know it may sound silly as why would I ever need this but I am using third party service and it redirects to my domain, but since code is executed inside container the request to abc.xyz fails. – Aseem Regmi Nov 03 '20 at 09:16

0 Answers0