Build failing with no output

The Dockerfile in my project installs dependencies and then runs a shell script in the CMD directive. The shell script makes sure some configs are in place, then it runs the app.

I’m able to build and run the image successfully with raw docker, but “convox start” always fails with status code 1. I don’t see any log output from convox other than that. I also don’t see any stdout or stderr from my shell script. Is there a verbose option or something that will help me figure out what’s failing?

I upgraded my local rack, which I think runs on Kubernetes now, but I wasn’t aware of the need to enable the kubernetes cluster in Docker for Mac. I’m enabling that now, then re-creating the local rack to see if that clears up any issues.

No, that didn’t fix it.

I’ve even reduced my case massively to see what’s going on.

Here’s the convox.yml:

services:
  web:
    health: /
    port: 3000

Here’s the Dockerfile

FROM node:10.11.0
CMD /bin/bash -C "echo 'hello world'"

I would expect this to build successfully, but then get an error at runtime that the health check didn’t work.

Instead, I get the following output:

build  | uploading source
build  | starting build
build  | Building: .
build  | Sending build context to Docker daemon  57.99MB
build  | Step 1/2 : FROM node:10.11.0
build  |  ---> 8672b25e842c
build  | Step 2/2 : CMD /bin/bash -C "echo 'hello world'"
build  |  ---> Using cache
build  |  ---> b9775b64fccb
build  | Successfully built b9775b64fccb
build  | Successfully tagged f872c75cae71a622a068f1660f5e5e87801cea2e:latest
build  | Running: docker tag f872c75cae71a622a068f1660f5e5e87801cea2e convox/DayOne-Server:web.BCQAUKIJYXR
build  | ERROR: exit status 1
build  | ERROR: exit status 1
ERROR: build failed

Ah, it appears that the app name DayOne-Server isn’t allowed, and caused the build to fail with no message. @ddollar are there some rules about the app names? Maybe it’d be good to add a descriptive error message when the name is bad.

1 Like