Search

파이참(Pycharm)을 원격(remote)으로 사용해보자

생성일
2021/06/24 07:18
수정일
2023/03/06 02:11
태그
IT
Python
2 more properties
부득이하게 '데스크탑'에서 개발 환경을 갖추기 어려운 경우가 있다. 데스크탑 환경은 '윈도우'인데, 개발 환경은 '리눅스' 또는 '유닉스'에서만 가능한 경우이다. 이럴 때는 업로드를 한 뒤 서버에서 실행하는 식으로 번거롭게 개발이 진행된다. '파이참'의 경우, 굳이 서버에서 별도로 실행시킬 필요 없이 '파이참'에서 바로 써버에서 실행시키는 것이 가능하다. 바로 'SSH Interpreter'라는 기능이다.
*파이썬 리모트(SSH Interpreter)는 '파이참 프로페셔널'에서만 지원되며, '파이참 커뮤니티' 버전에서는 지원되지 않는다. 학생의 경우 학교 이메일 인증을 통해 무료로 파이참 프로페셔널 사용이 가능하니, 고민하지 말고 등록해서 프로 버전을 써보자.
기능에 대한 기본적인 개념을 해보자면, 데스크탑에서 작업하는 파일을 서버에 업로드 한 뒤, ssh 프로토콜을 통해 서버에서 해당 파이썬 파일을 실행하는 것이다. 실행 시점이 서버의 파이썬 인터프리터이기 때문에, 당연히 '서버'의 인터프리터 기준으로 '라이브러리'를 사용하게 된다. 폴더 역시 '서버'를 기준으로 접근한다.

설정

설정(Setting) → Python Interpreter에서 우측 상단의 '톱니바퀴'를 눌러 추가(Add..)를 누른다.
항목 중에 SSH Interpreter를 누른다.
이 후 '호스트' 주소(IP)와 아이디를 입력한다.
패스워드를 입력한다. 인증키를 사용하는 경우, 해당 키 파일 주소를 지정한다.
만약 정상적으로 '접속'이 이루어졌다면, 아래와 같이 '인터프리터' 경로와 '싱크 폴더'가 나타나야 한다. 서버에서 실행하고자 하는 파이썬 인터프리터 파일을 지정하고, 본인의 컴퓨터 작업 폴더가 서버의 어느 경로로 들어가야 하는지를 지정한다. 별도로 지정하지 않을 경우 파이참은 임의의 폴더를 /tmp 경로 안에 만들어 지정한다. 별도로 지정하지 않을시, 임시로 생성된 폴더가 파이썬 파일의 '실행 시점'이 된다는 점을 기억하기 바란다.
싱크 폴더 박스를 누르면, 아래와 같이 팝업이 뜬다. 나의 로컬 폴더과 이를 동기화 하고자 하는 리모트 폴더를 지정할 수 있다.
리눅스의 경우 경로가 추후 수정이 가능하다. 그런데 윈도우에서 이따금 '경로 수정'이 되지 않는 경우가 있다. 만약 그럴경우, 생성한 인터프리터를 삭제 후 새로 등록을 해야 한다.
만약 로컬에서 '동기화' 하고자 하는 폴더가 하나 이상일 경우, 추가하여 설정하는 것이 가능하다. 여기서 반드시 기억해야 할 것은, '파일의 실행 위치'는 '서버'라는 것이다. 절대로 내 '컴퓨터'에서 실행이 되는 것이 아니다.
(어떤 블로그의 경우, '파이참'은 '진정한 리모트' 지원이 아니라며, vscode만이 '완벽하게 리모트'를 지원한다고 설명한다. 이는 받아들이기 어려운 주장이다. 파이참이나, vscode 모두 ssh를 통해 서버에서 실행을 한다. 둘 모두 실행 위치는 동일하게 '서버'이다. 실행 방법이 동일한데, 리모트에 '차이'가 발생할 이유가 없다.)
설정이 완료되고 나면 '리모트(서버)'의 라이브러리 현황을 보여준다. 파이참을 통하여 필요한 라이브러리를 관리할 수 있다.
이 후 파이참에서 코드를 수정한 후 'RUN'을 작동시키면 서버에서 코드가 돌아가게 된다.
내 데스크탑과 서버간 폴더의 '동기화'를 하고 싶다면, 좌측 탭에 '프로젝트' 폴더에서 '마우스 우측' 버튼을 누른 뒤 'Deployment'를 누르면 'Sync with Deployed to' 뒤에 본인의 '서버 주소'가 함께 기재되어 있다. 이를 누르면 아래와 같은 동기화 화면이 뜬다.