Ngrok: Expose Database in Docker Container

I have a web application built with Elixir that uses a Postgres database in a docker container (https://hub.docker.com/_/postgres/).

I need to expose the web interface (running on port 4000) and the database in the docker container.

  • Docker container IO performance
  • How to avoid reinstalling packages when building Docker image for Python projects?
  • Terminal with Docker Compose with Links
  • Best way for debugging docker build error
  • Spring Netflix Eureka Client Docker
  • Redirect python print output to graylog2
  • I tried adding this to my configuration files:

    tunnels:
      api:
        addr: 4000
        proto: http
      db:
        addr: 5432
        proto: tcp
    

    Then in my Elixir config/dev.exs I add this under the database configuration:

    ... 
    hostname: "TCP_URL_GIVEN_BY_NGRROK"
    

    When I attempt to start the application, it says failure to connect to the database.

    The docker command that I used is:

    docker run --name phoenix-pg -e POSTRGRES_PASSWORD=postgres -d postgres

    What am I doing wrong?

  • docker login fails -> x509: certificate signed by unknown authority .. “crypto/rsa: verification error”
  • how to pull docker images in a fast way. It takes too much of time just to download 50mb of image
  • Dockerfile ENV backtick interpolation
  • Docker registry error response from daemon i/o timeout
  • Is 2 the minimum number of instances to properly deploy a container on AWS?
  • Docker Container to Container communication with IPv6 only
  • Docker will be the best open platform for developers and sysadmins to build, ship, and run distributed applications.