Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How do I write to a volume container as non-root in docker?

Tags:

docker

How do I mount a volume writable by a non-root container user? I am ok with either the volume being owned by the non-root user or permissions being set to 777.

Dockerfile:

FROM alpine
RUN adduser -D myuser
USER myuser

Build image:

docker build -t example .

Run image, see /app unwritable by user

% docker run -i -t -v myapp:/app example /bin/sh
/ $ whoami
myuser
/ $ ls -lha / | grep app
drwxr-xr-x    2 root     root        4.0K Nov 12 21:01 app
/ $ 

We can see app is globally readable but only writable by root.

like image 352
Frederick F. Kautz IV Avatar asked Nov 12 '15 21:11

Frederick F. Kautz IV


1 Answers

That is not yet supported, and is studied in issue 2259.
That affect other images like docker-java.

Basically, you have to chown and copy (with the right user) your data in the volume, which is not very convenient.

like image 129
VonC Avatar answered Nov 09 '22 12:11

VonC