[Synology] code-server 폴더 마운트 하기


현재 시놀로지 + Docker + code-server 조합으로 VSCODE 서버를 돌려서 잘 활용하고 있습니다.

code-server을 쓰면서 불편했던 점은 Docker에 NAS랑 마운트 되어서 연결된 폴더에서 작업을 못해서 서버에서 작업을 해도 NAS 폴더랑 동기화 되지 않아서 소스를 파일로 가져오려면 다운로드 해야 하는 불편함이 있었습니다.

 

사실 아예 마운트가 안되는 줄 알았는데 실제로 마운트는 됐으나 code-server에서 마운트된 폴더를 열어서 파일을 만들려고 하면 아래와 같은 오류가 발생했습니다.

 

error EACCES: permission denied

 

권한이 없다고 하는데.. Docker에서 관리자 권한으로 실행을 해도 해결이 안되더군요.

이거 때문에 해결을 못하고 있다가 인터넷에서 리눅스 chmod 명령어로 권한을 줘서 해결한 분을 봐서 힌트를 얻어서 해결하게 되었습니다.

 

우선 저는 이런식으로 마운트 되어 있습니다.

중요한건 마운트 경로인데 /home/coder/ 안에 project 폴더와 docker/vscode 폴더가 연결되어 있습니다.

 

그냥 /home/coder을 통째로 마운트 하라는 글도 봤던거 같은데 그렇게 하면 컨테이너 자체가 실행되지 않으니 주의하셔야 합니다.

 

project 폴더에 연결하는게 싫으시다면

/home/coder/원하는 폴더 이름 으로 연결해주세요.

 

저렇게 마운트가 끝났으면 리눅스 chmod 명령어를 입력해서 NAS 와 연결된 디렉토리에 권한을 주시면 됩니다.

 

sudo -i
chmod -R 777 디렉토리명

cd로 들어가서 chmod로 권한을 주시거나 경로를 통째로 입력해주시거나 뭘 해도 무관합니다.

 

ls -al 로 확인해보시면 저렇게 User, Group, Other 에 모든 권한이 들어간것을 확인할 수 있습니다.

이제 vscode 에서 project 파일을 열면 저 NAS 폴더와 연결이 되고 파일 작성도 잘됩니다.

 

참 쉽죠?

COMMENT WRITE