[Inception] 1. Docker 설치 및 Remote - SSH

aqualung·2023년 2월 26일

1. Docker 설치 (Debian:10)

Docker Engine은 기본적으로 리눅스 환경에서 구동된다. 과거와 달리 현재는 Docker Desktop 같은 애플리케리션을 이용하면 따로 리눅스 환경을 구성하지 않아도 편리하게 도커 엔진을 이용할 수 있다. 하지만 과제에서 가상머신에 도커 엔진을 실행할 것을 요구하기 때문에 가상머신에 도커를 설치하여 진행하겠다.

내 경우 VirtualBox에 Debian 리눅스를 설치하였다.

공식 문서 Install Docker Engine on Debian을 따라하면 간단히 설치할 수 있을줄 알았지만 사전에 몇 가지 패키지를 설치하고 설정파일을 건드려야 했다.

sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
gnupg \
software-properties-common

패키지를 설치하고 터미널을 다시 시작하는 것을 잊지 말자

Docker에서 제공하는 설치방법을 따라가다 보면 curl: (6) Could not resolve host 라는 오류를 볼 수 있다.

도메인 주소를 IP로 알려달라는 요청을 처리할 수 없을 때 발생하는 오류라고 한다. 즉, 도메인네임서비스를 어디서 받을 것인지를 설정해 주면 된다.

/etc/resolv.conf를 수정해주자.

sudo vim /etc/resolv.conf
# /etc/resolv.conf에 추가
nameserver 8.8.8.8
nameserver 8.8.4.4

이제 공식문서를 따라 설치를 진행하자.

마지막으로 Userdocker그룹에 추가해주고 재부팅한다.

sudo usermod -aG docker $USER
sudo reboot

2. Remote-ssh

VirtualBox는 드래그앤드랍 방식으로 호스트와 가상머신의 파일공유를 지원한다. 하지만 설정도 복잡하고 버그도 많아 정상적인 작동을 기대하기 힘들다. vscodeRemote-SSH라는 익스텐션을 이용해 보자.

Screen Shot 2023-02-26 at 9 19 25 PM

Remote-SSH를 설치하고 ssh를 설정해야 한다.

우선 호스트의 IP를 확인한다. 터미널에서 ifconfig 명령어를 통해 확인 가능하다.

VirtualBox에서 포트포워딩을 진행해 준다.

설치된 가상머신을 선택하고 Settings -> Network탭 -> Advanced토글 -> Port Forwarding

Screen Shot 2023-02-26 at 9 36 28 PM

그림과 같이 입력하고 Host IP 부분에 IP를 입력해 준다.

vscode에서 ⇧+⌘+P -> Remote-SSH: Open SSH Configuration File...

Screen Shot 2023-02-26 at 9 34 38 PM

확인한 Host IP와 가상머신의 사용자를 설정해준다.

⇧+⌘+P -> Remote-SSH: Connect to Host... 를 클릭하여 사용자의 패스워드를 입력하여 가상머신에 접속한다.

연결이 안될 경우 ~/.ssh/known_hosts를 열어 이미 Host IP가 있다면 해당 라인을 삭제해주고 다시 연결을 시도해보자.

연결된 vscode에서 Open Folder을 눌러 원격으로 가상머신 사용자의 홈디렉토리에 접근이 가능하다.

Screen Shot 2023-02-26 at 9 45 45 PM

패스워드를 한번 더 입력해주자.

정상적으로 가상머신에 접근이 가능하다면 호스트PC에서 가상머신으로 파일을 전송할 수 있다.

0개의 댓글