오라클 클라우드 VM 인스턴스에 ssh 접속을 합니다.

ssh access to oracle cloud vm instance

sudo -s 

위 명령어로 관리자 계정으로 전환 합니다.

change user and sudo

 

docker login을 입력 후 도커 허브 계정으로 로그인 해주세요.

type docker login to sign in to docker hub

 

 

docker 폴더를 만든 후 

create docker folder.

저는 docker-compose.yml 파일을 사용하기 때문에 해당 파일을 scp를 통해 인스턴스에게 전송합니다.

i use docker-compose thus i transfer that file using scp to my instance.

그럼 권한 문제가 발생하게되는데요.

docker 폴더는 ubuntu 유저에게는 쓰기 권한이 없기 때문입니다.

 

chmod 명령어로 docker 폴더의 쓰기권한을 모두 열림으로 전환합니다. (보안상에는 취약할 수 있습니다. ubuntu 유저에게는 쓰기 권한을 주는 것을 추천합니다.)

다시 scp를 실행하면

해당 docker-compose 파일이 정상적으로 들어와있는것을 알 수 있습니다.

docker-compose파일로 pull을 하게되면 해당 파일에 명시된 이미지들을 한번에 다 받을 수 있는데

docker-compose 명령어가 설치되어있지않다면 실행할 수 없습니다. 고로, 다운받아줍시다.

docs.docker.com/compose/install/#install-compose

 

Install Docker Compose

You can run Compose on macOS, Windows, and 64-bit Linux. Prerequisites Docker Compose relies on Docker Engine for any meaningful work, so make sure you have Docker Engine installed either...

docs.docker.com

 

우리는 리눅스이니까

sudo curl -L "https://github.com/docker/compose/releases/download/1.27.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

명령어를 실행 후

sudo chmod +x /usr/local/bin/docker-compose 

실행 시켜줍니다.

 

이쯤에서 VIM도 인스톨 해줍니다.

앞으로 항상 docker-compose, docker stack 명령어를 치긴 귀찮으니 엘리어스 등록을 해줍니다. vi ~/.bashrc

source ~/.bashrc

alias가 정상적으로 적용된 모습

이미지를 다운받고 있는 화면입니다.

docker swarm init 명령어로 스왐 모드를 활성화 시켜줍니다.

 

도커 스택을 배포하여줍니다.

만약에 docker-compose의 build 인자 하위에 context경로가 인스턴스에도 똑같이 구현되어있지않다면 에러가 발생할겁니다.

context에 ../folder가 있다면 인스턴스의 docker-compose.yml 기준으로 ../ 위치에도 folder가 위치해야합니다.

그럴 경우 build 옵션을 지워버리시거나 똑같이 폴더를 만들어주세요.

그럼 끝!

by 밑바닥에서 글로벌로~ 발전소장 에르 :) 2020. 9. 28. 22:15