I am trying to deploy an app with two services (nodejs api and a nextjs frontend) from a mono repo.

Both apps work fine when deployed separately. I have looked at the sample-monorepo and adapted it to my use case.

When deploying, the build runs successfully but the run log just says:

api unable api unable to retrieve container logs for containerd://8461e129******41ec89webapp unable to retrieve container logs for containerd://e8520b318675******6bbf1852

and the whole deploy fails with a DeployContainerExitNonZero.

This is my repo: https://github.com/0xsven/doap-test-mono

What am I doing wrong?

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

×
2 answers

@snormoredo

I have jus made it public. My deployment log looks like his:

https://i.imgur.com/wVCsVes.png

Thank’s for your help.

  • I forked the repo and was able to deploy successfully (no changes): https://doap-test-85lgh.ondigitalocean.app/

    Note though that the api component route path is /graphql in the spec, and the api nexus GraphQL server is listening on /graphql too, so the GraphQL endpoint is actually available at /graphql/graphql — you can simplify this by updating the nexus server config or the api component route path.

    It’s unclear why your deployment failed from my current perspective; if you hit the manual Deploy button in the UI does it continue to fail?

    • Deleted the whole app and re-created it with doctl. Now it works!

      I think what happened was that I initially created the app with a different app.yaml file. At first I was missing some stuff like run_command. Then I did all my updates through github. It looks like some of my initial settings remained?

      • Ah that sounds like it could be the mixup. We don’t currently sync your app spec from an app.yaml file in your repo directly; but that is a feature that will be coming in the future. So if you make updates to it directly, you’d have to resubmit that via

        doctl app update <id> --spec app.yaml
        

@0xsven 👋

The DeployContainerExitNonZero error would normally indicate that the container is exiting the process in error (with a non-zero exit code). The deployment logs should show any stdout/stderr produced within the container when this happens.

Unfortunately the repo you linked to seems to be private so I’m not able to test it directly myself. If you’re comfortable making that public then I can dig a little further here. Alternatively, I’d suggest opening a ticket with Support; that way we can take a closer look at the app itself.

Submit an Answer