Hi

On Mon, Jul 19, 2021 at 8:53 PM Albert Serrallé <
albert.serra...@adevinta.com> wrote:

> Hello all,
>
> I'm trying to run pgadmin in a Kubernetes cluster with enforced Pod
> Security Policies. Long story short, in the cluster, *none* of the Linux
> capabilities are allowed.
>
> The Dockerfile enables this for the python exec:
>
> setcap CAP_NET_BIND_SERVICE=+eip /usr/bin/python3.8 && \
>>
>
> So the entrypoint.sh fails at startup time, as soon as it invokes the
> python executable:
>
> /entrypoint.sh: line 70: /venv/bin/python3: Operation not permitted
>
>
> I removed this requirement creating a new Docker image with the following
> definition:
>
> FROM dpage/pgadmin4:5.5
>> USER root
>> RUN setcap -r /usr/bin/python3.8
>> USER pgadmin
>>
>
> And then it boots without problem (using the 5050 port).
>
> Do you think it makes sense to modify the main Dockerfile to avoid this
> problem?
>

If we do that, then we break the container for anyone who is using a
privileged port for the server (e.g. everyone using default settings). I
don't see how we could introduce such a change without causing problems for
such users.


> Is there any other workaround that doesn't require creating a new image?
>

Not that I can think of, I'm afraid.

-- 
Dave Page
Blog: https://pgsnake.blogspot.com
Twitter: @pgsnake

EDB: https://www.enterprisedb.com

Reply via email to