Flatpak로 설치한 Visual Studio Code(Flathub)에서는 몇가지 설정을 해 줘야 Remote – Containers를 사용할 수 있다. 가능한 많은 어플리케이션을 Flatpak으로 옮기는 과정에서 VSCode도 함께 옮겼는데, Remote – Containers가 되지 않아 이리저리 찾아보니 가능한 방법이 있어 성공적으로 설정할 수 있었다.
1. VSCode에 /tmp 접근 권한 부여
flatpak override --user --filesystem=/tmp com.visualstudio.code
2. VSCode에서 docker, docker-compose 대신 사용할 docker.sh, docker-compose.sh 생성하고 실행권한 부여
echo -e "#"'!'"/bin/sh\nflatpak-spawn --host docker "'"$@"' > ~/.var/app/com.visualstudio.code/data/docker.sh
echo -e "#"'!'"/bin/sh\nflatpak-spawn --host docker-compose "'"$@"' > ~/.var/app/com.visualstudio.code/data/docker-compose.sh
chmod +x ~/.var/app/com.visualstudio.code/data/docker.sh ~/.var/app/com.visualstudio.code/data/docker-compose.sh
3. VSCode의 Remote – Containers 설정에서 아래 스크린샷처럼 Docker Compose Path와 Docker Path 설정
Docker Compose Path: /var/data/docker-compose.sh
Docker Path: /var/data/docker.sh
이후 VSCode를 완전히 종료했다 재시작하면 Remote – Containers가 정상적으로 동작한다.