본문 바로가기

Cloud

Docker 설치방법 & 환경구성

다음 내용은 AWS에서 Docker를 설치하는 과정과 관련 개념을 정리하는 포스팅입니다.

 

AWS - EC2에서 Putty를 통해 CLI로 클라우드 서버에 접속한 뒤 docker -v 명령어를 실행합니다.

docker가 처음엔 깔려있지 않기 때문에 apt install docker.io라는 명령어로 docker를 설치합니다.

root@ip-xxx-xx-x-xxx:/home/ubuntu# apt install docker.io

저장소(Repository): 이미지가 저장되는 장소로, 명시되지 않은 이미지는 도커에서 기본적으로 제공하는 

이미지 저장소인 도커 허브의 공식 이미지를 뜻합니다.

이미지를 생성할 때 저장소 이름은 명시할 필요 없기 때문에 종종 생략할 수 있습니다.

 

이미지: 작업하는 대상이며 Docker를 기동할 때 반드시 이미지 이름은 들어가야 합니다.

태그: 이미지의 버전 관리, 혹은 리비전 관리에 사용합니다. 일반적으로 버전을 명시하지만, 명시하지 않을 경우 

도커 엔진은 이미지의 태그를 가장 최근꺼라고 생각합니다.

 

컨테이너를 생성 및 접속하는 방법
docker run -i -t ubuntu:14.04 (ubuntu = 이미지, 14:04 = 태그)

 

다음 명령어를 통해서 컨테이너를 생성 및 실행을 하게되며 사용자와 호스트 이름이 변경되었다면 컨테이너 내부에

들어온 것이라 할 수 있습니다.

run 명령어는 pull, create, start 명령어를 일괄적으로 실행한 후에 attach가 가능한 컨테이너일 경우

사용하여 컨테이너 내부로 들어가는 명령어입니다.

 

 

docker 사용권한 유저에 부여하기
sudo setfacl -m user:유저이름:rw /var/run/docker.sock

유저에 권한을 준 다음 사용하면 됩니다.  root 계정으로 하면 그냥 사용하면 됩니다.

유저로 접속한 상태에서 (su 유저이름) docker 명령어를 통해 Jira를 설치해보도록 하겠습니다.

docker pull cptactionhank/atlassian-jira-software:latest

https://hub.docker.com/r/cptactionhank/atlassian-jira/ 

 

Docker Hub

 

hub.docker.com

 

Docker hub에서 Jira를 끌어다 다운로드 받는 것입니다.

 

다음은 jira-container라는 이름으로 도커를 생성시켜 보겠습니다.

docker create --restart=no --name "jira-container"

docker create 명령어는 도커 이미지를 pull한 다음에 그에 대한 컨테이너를 생성하는 명령어이기 때문에

start를 하거나 attach를 하지 않습니다.

따라서 생성과 동시에 시작을 하기 위해서는 run 명령어를 더 많이 활용하기 때문에 docker run 명령어를

기억해주시면 좋을 것 같습니다.

docker run -i -t --name 컨테이너이름 이미지이름:태그

예:) docker run -i -t --name containerName centos:7

먼저 이미지를 레퍼짓토리에서 pull한 다음 다음과 같이 run 명령어를 사용하면 로컬 환경에서

먼저 해당 컨테이너를 찾은뒤 없다면 새로 생성하면서 시작합니다. (attach까지 진행)

나올때도 ctrl P, Q를 써서 나옵니다. (컨테이너 종료 안함)

 

도커시작

docker start --attach "jira-container"

도커를 공식 이미지 저장소에서 불러와서 환경을 구성할 수 있습니다.

docker pull centos:7

centos라는 이미지를 7 버전으로해서 가지고 오는건데 도커 엔진에 잘 존재하는지 확인해봅시다.

docker images

이미지들을 잘 확인한 다음에 가져온 이미지로 나만의 컨테이너를 만들어봅시다.

docker create -i -t --name 컨테이너이름 centos:7

다음 명령어로 컨테이너를 만들면 16진수 해시값이 나오게 되는데 이는 컨테이너 고유 ID로 

앞자리 12자리만 사용합니다. 

docker inspect 컨테이너이름

다음 명령어를 통해 컨테이너 ID를 확인할 수 있습니다.

 

도커 시작 명령어는 두 가지가 있습니다.

attach 명령어는 컨테이너 내부로 들어가서 작업하는 것입니다.

빠져나오는 명령어는 ctrl P, Q 입니다. (exit는 다른 컨테이너를 정지시키면서 나오는 것이므로 탈출 명령어를 사용할 것)

docker start 컨테이너이름
docker attach 컨테이너이름 

 

생성한 컨테이너 목록을 확인하는 방법 (단, 정지되지 않은 컨테이너만 보입니다. 즉, exit로 나온거면 ps 리스트에 안뜸)

docker ps

옵션 -a를 붙이면 언제 만들어졌고 상태는 어떠하며 포트, 이름 등 컨테이너의 상태를 출력해줍니다.

 

ctrl P, Q로 나왔을 때 ps 명령어 결과 (haams2 컨테이너에서 탈출할 때)
root@ip-172-31-5-169:/home/ubuntu# docker ps
CONTAINER ID   IMAGE      COMMAND       CREATED          STATUS          PORTS     NAMES
cf147e2429ae   centos     "/bin/bash"   9 seconds ago    Up 9 seconds              haams2
d9d8ed50e4f8   centos:7   "/bin/bash"   12 minutes ago   Up 10 minutes             haams
exit로 나왔을 때 ps 명령어 결과 (haams2 컨테이너에서 탈출할 때)
root@ip-172-31-5-169:/home/ubuntu# docker ps
CONTAINER ID   IMAGE      COMMAND       CREATED          STATUS          PORTS     NAMES
d9d8ed50e4f8   centos:7   "/bin/bash"   16 minutes ago   Up 13 minutes             haams

앞서 생성한 centos:7, ubuntu:14.04 이미지는 /bin/bash 커멘드가 내장되어 있으므로 별도의 커멘드를 설정하지 않아도

되고, 상호 입출력이 가능한 셸 환경을 사용할 수 있습니다.

 

 

이상 도커의 설치 및 기본 환경 구성에 대해 알아봤습니다.  감사합니다.

반응형

'Cloud' 카테고리의 다른 글

AWS - CLI & 사용자 정보 보호  (0) 2023.01.17
About IAM  (0) 2023.01.17
AWS 소개  (0) 2023.01.17
Docker 환경 구성2  (0) 2023.01.17
도커(Docker)란?  (0) 2023.01.17