edgedb / edgedb-docker

Official Docker Image packaging for EdgeDB
81 stars 16 forks source link

Cannot deploy Edgedb docker to Render.com #65

Open ElijahJohnson5 opened 1 year ago

ElijahJohnson5 commented 1 year ago

When trying to get edgedb working on render I ran into issues with the kill command usage in this dockerfile. Render seems to not allow using the kill command when running the dockerfile as it gives an operation not permitted error when trying to kill the temporary server. Any workaround for this would be great

coreyward commented 1 year ago

According to this, EdgeDB is trying to run kill as root instead of the EdgeDB user.

We’ve done some investigation on our end, and suspect that lines 1156-1163 in EdgeDB’s docker-entrypoint-funcs.sh file are causing the permissions issue: https://github.com/edgedb/edgedb-docker/blob/21b05dd52311d95007b956737ed8759e139ceee8/docker-entrypoint-funcs.sh#L1156 3

By default, Render runs these Docker scripts with root user, but the EdgeDB server is being started with a non-root user. When the script later attempts to kill edgedb_pid , the root user doesn’t have permission.

I would recommend trying to change the user in your Dockerfile to see if you can set a user with the correct permissions, or perhaps forking EdgeDB’s docker repo or reporting this in as an issue to them.