작은하마

[GCP] Docker 사용법 #1 본문

GCP

[GCP] Docker 사용법 #1

꼬몽울 2021. 7. 16. 16:02

도커를 설치했으니 이제 사용을 해야하는데 GUI에 익숙해진터라

어디서부터 어떻게 해야할지 모르겠다.

 

필자는 Docker를 통해 airflow를 설치하는것이 목적이다.

아래의 페이지에서 필요한 도커의 이미지가 있는지 찾아보도록하자

https://hub.docker.com/search?q=&type=image 

 

Docker Hub

 

hub.docker.com

정말 수많은 airflow관련 이미지들이 존재한다.

위의 airflow이미지가 가장 명확하고 Bitnami에서 나온터라 이것을 받기로 하였다.

 

서버에 접속하여  docker search [옵션] <검색어>를 이용한 방법도 존재한다. ==>보통은 이방법을 사용

$docker search [옵션] <검색어>

만약 내가 많이 쓰고 익숙한 이미지를 내려받는다면 

$sudo docker run apache/airflow

를 입력하면 자동으로 설치와 실행이 진행된다.

그게 아니라면

docker pull [옵션] <이미지명>[:태그명]

$sudo docker pull apache/airflow

옵션을 주지 않았기 떄문에 자동으로 최신 버전으로 다운받아 진다.

 

$docker run [OPTIONS] IMAGE[:TAG|@DIGEST] [COMMAND] [ARG...]

을 이용해서 container로 올린다.

옵션설명

-d detached mode 흔히 말하는 백그라운드 모드
-p 호스트와 컨테이너의 포트를 연결 (포워딩)
-v 호스트와 컨테이너의 디렉토리를 연결 (마운트)
-e 컨테이너 내에서 사용할 환경변수 설정
–name 컨테이너 이름 설정
–rm 프로세스 종료시 컨테이너 자동 제거
-it -i와 -t를 동시에 사용한 것으로 터미널 입력을 위한 옵션
–link 컨테이너 연결 [컨테이너명:별칭]

 

#Docker 다루기

 

docker images [옵션] [repository명]

$sudo docker images or sudo docker image ls

현재 내가 가지고있는 docker image 목록을 보는것

※ 옵션

-a, --all  : 모든 이미지 표시

--digests : digest 표시

--no-trunc : 모든 결과 표시

-q, --quiet : 이미지 ID만 표시

 

 

$sudo docker rmi [이미지id]

도커 이미지 삭제

 

$sudo docker ps -a

현재 실행중인 혹은 종료된 컨테이너 확인

 

$sudo docker rm [컨테이너id]

도커 이미지 삭제

 

위의 사항을 기본적으로 알고 시작한다.

$sudo docker images

로 확인한다

이제 해당 이미지를 컨테이너화 시켜야한다.

docker run [옵션] <이미지명>[:태그명] [값]

※ docker run 기본 옵션

-a , --attach : 표준 입/출력 표준 에러 출력을 연결 (STDIN, STDOUT, STDERR)

--cidfile : 컨테이너 ID를 파일로 출력한다.

-d, --detach : 컨테이너를 생성하고 백그라운드에서 실행시킨다.

-i, --interactive : 컨테이너 표준 입력을 연다.(컨테이너 내부에서 발생하는 일을 사용자에게 보여준다)

-t, --tty : 단말 디바이스(tty)를 사용한다.(터미널과 비슷한 환경으로 조성해준다.)

--name : 컨테이너명을 지정한다.

 

$sudo docker run -itd --name airflow apache/airflow bash

위와같이 컨테이너가 실행된 것을 알 수 있다.

백그라운드로 실행을 했기떄문에 컨테이너로 접속하기 위해서는 attach를 이용하여 접속한다.

 

$sudo docker attach airflow

실행중인 airflow container에 접속한모습

여기서 다시 빠져나오고 싶을떄는

ctrl+q를 입력하여 빠져나온다.

 

'GCP' 카테고리의 다른 글

[GCP] Cent7 에 Docker, Docker-compose설치  (0) 2021.08.25
[GCP] Docker로 Mysql 설치하기  (0) 2021.07.20
[GCP]Docker-Compose로 Airflow 설치 Bitnami/Airflow  (0) 2021.07.19
[GCP] Docker 설치하기  (0) 2021.07.16
Comments