version: '3.8' services: dev-flutter: image: chodak166/dev-flutter container_name: dev-flutter-01 build: context: . args: USER_UID: ${UID:-1000} USER_GID: ${GID:-1000} network_mode: host environment: - DISPLAY=${DISPLAY} - PULSE_SERVER=unix:${XDG_RUNTIME_DIR}/pulse/native - TARGET_USER=developer env_file: dev-init/dev.env volumes: - ./volumes/projects:/projects - ./volumes/flutter:/opt/flutter - ./volumes/rustup:/opt/rustup - ./volumes/cargo:/opt/cargo - ./volumes/android-sdk:/opt/android-sdk - ./volumes/pub_cache/:/home/developer/.pub-cache - ./volumes/home_android:/home/developer/.android - ./volumes/home_gradle:/home/developer/.gradle - ./volumes/home_vscode-server:/home/developer/.vscode-server - /tmp/.X11-unix:/tmp/.X11-unix - $HOME/.Xauthority:/developer/.Xauthority - ${XDG_RUNTIME_DIR}/pulse:${XDG_RUNTIME_DIR}/pulse - /run/user/1000/at-spi:/run/user/1000/at-spi #TODO: pass UID? - /dev/shm:/dev/shm - ./dev-init:/opt/dev-init # debug - .:/host # debug devices: - /dev/dri:/dev/dri - /dev/usb:/dev/usb - /dev/udev:/dev/udev - /dev/bus:/dev/bus - /dev/kvm:/dev/kvm - /dev/snd:/dev/snd security_opt: - seccomp:unconfined privileged: true cap_add: - SYS_ADMIN - NET_ADMIN - SYS_PTRACE stdin_open: true tty: true init: true