Skip to content

HTTPS proxy dies during first request #2

@mwarkentin

Description

@mwarkentin

I'm running into issues w/ using the HTTPS proxy locally.

docker-compose.yml:

web:
  build: .
  command: actions/web.sh
  environment:
    - DEVELOPMENT_MODE=true
    - WEB_CONCURRENCY=1
  labels:
    - convox.port.7001.protocol=https
  ports:
    - 7001:80
  links:
    - redis
redis:
  image: convox/redis
  ports:
    - 6380

The proxy container dies immediately when I make a request to it (/bin/sh terminated instantly on first request as well):

michaelwarkentin@mwarkentin cheques (JNO-98-docker) ~~ $ docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED              STATUS              PORTS                              NAMES
a2180552ee64        cheques/web         "sh -c actions/web.sh"   About a minute ago   Up About a minute   0.0.0.0:48987->80/tcp              cheques-web
b18f3403b352        convox/proxy        "proxy 7001 172.17.0."   About a minute ago   Up About a minute   0.0.0.0:7001->7001/tcp             awesome_wing
5d12100d75e3        cheques/redis       "/docker-entrypoint.s"   About a minute ago   Up About a minute   6379/tcp, 0.0.0.0:6380->6380/tcp   cheques-redis
michaelwarkentin@mwarkentin cheques (JNO-98-docker) ~~ $ http https://192.168.99.100:7001

http: error: SSLError: EOF occurred in violation of protocol (_ssl.c:590) while doing GET request to URL: https://192.168.99.100:7001/
michaelwarkentin@mwarkentin cheques (JNO-98-docker) ~~ $ docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                              NAMES
a2180552ee64        cheques/web         "sh -c actions/web.sh"   2 minutes ago       Up 2 minutes        0.0.0.0:48987->80/tcp              cheques-web
5d12100d75e3        cheques/redis       "/docker-entrypoint.s"   2 minutes ago       Up 2 minutes        6379/tcp, 0.0.0.0:6380->6380/tcp   cheques-redis

Proxy seems to be running inside the container:

/go/src/github.com/convox/proxy # ps
PID   USER     TIME   COMMAND
    1 root       0:00 proxy 7001 172.17.0.1:59850 https
   17 root       0:00 /bin/sh
   23 root       0:00 ps

I’m able to curl my web container from within the proxy container:

/go/src/github.com/convox/proxy # curl -I 172.17.0.1:43379
HTTP/1.1 200 OK
Server: nginx/1.9.9

Not sure how to figure out exactly where things are breaking, but since things seem to run until I make a request, it's likely further down in the stack from here: https://github.com/convox/proxy/blob/master/main.go#L73

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions