опытки развернул и запустил на wsl2 Ubu20 Docker Desctop:
юзера сделал dev:dev
достают пару моментов: Контейнеры работают от рута.
- например в app работает composer lint
и он файлы что фиксит меняет овнера на рут.
- install в вендоре аналогично все создает
- контейнер elastic при первом запуске создает папку ./docker/elastic/data/ рутовую и сам же в нее потом писать не может
пробовал через переменные
elastic:
user: $MYUID:$MYGID
или elastic:
user: 1000:1000
volumes:
- ./docker/elastic/data:/usr/share/elasticsearch/data
- /etc/group:/etc/group:ro
- /etc/passwd:/etc/passwd:ro
- /etc/shadow:/etc/shadow:ro
в контейне
$ docker exec -it docker ps -f name=elastic -q bash
bash-4.2$ id
uid=1000(dev) gid=1000(dev) groups=1000(dev)
вот что ему еще надо?
чтобы папку data делал владельцем dev?
а в контейнере app умирает композер
It will be stored in "/home/dev/.composer/auth.json"
требует токен
а потом не может resolve host: api.github.com
Папки на хосте создаёт сам докер, поэтому их владельцем становится рут. Либо создавай папку сам, либо используй volume
Обсуждают сегодня