docker란?
- django, db, web server 등 다양한 어플리케이션을 컨테이너 환경에서 테스트 및 배포할 수 있는 소프트웨어 플랫폼
- 컨테이너 환경은 가상 머신(Virtual machine)에서 사용되는 가상 환경과 비슷하지만 다른 구조를 가지고 있다
- 다양한 어플리케이션을 쉽고 빠르게 배포할 수 있다
- 컨테이너는 각각 독립적인 환경에서 구동되기 때문에 안정적인 운영이 가능
- docker 이미지를 통해 동일한 환경을 가진 컨테이너를 쉽게 생성하고 관리할 수 있다
docker 이미지란?
- 가상 머신에서 윈도우를 설치할 때, 윈도우 ISO를 사용해 설치하는 것처럼 docker 컨테이너는 docker 이미지를 기반으로 생성
- 이미지는 docker 컨테이너가 생성될 때 실행되는 실행파일, 설정 등을 가지고 있다
# 패키지 설치
sudo apt install docker.io -y
>> sudo : 관리자 권한으로 설치. docker 앞에 필수로 입력할 것.
>> -y : yes 생략. 무조건 설치
# docker 설치 확인
sudo docker --version
# docker 컨테이너 생성하기
sudo docker run -d -p 80:80 httpd:latest
>> run : 이미지를 사용해 컨테이너를 실행시킴
>> -d : 컨테이너를 데몬(백그라운드)으로 실행시킴
>> 80:80 : 80번 포트로 접속했을 때 컨테이너에 접근할 수 있도록 포트포워딩 설정을 해줌
>> httpd:latest : httpd의 가장 최신 이미지를 사용해 컨테이너를 생성
# 실행중인 컨테이너 확인하기
sudo docker ps
>> CONTAINER ID : 컨테이너가 가지고 있는 고유한 id
>> IMAGE : 컨테이너가 생성될 때 사용된 이미지
>> COMMAND : 컨테이너가 생성될 때 실행되는 명령어
>> CREATED : 생성 후 경과 시간
>> STATUS : 컨테이너 상태
>> PORTS : 사용중인 포트
sudo docker ps -a
>> -a : 중지된 컨테이너 목록까지 포함해서 모두 확인하기
# 다운받은 이미지 확인하기
sudo docker images
>> REPOSITORY : 이미지 저장소 이름
>> TAG : 이미지 버전
>> IMAGE ID : 이미지의 고유한 id
>> CREATED : 이미지 생성일(마지막 업데이트 일)
>> SIZE : 이미지 용량
# 컨테이너 내부로 들어가보기
sudo docker exec -it {container_id} /bin/bash
>> /bin/bash : 컨테이너에 접속할 때 사용되는 쉘을 입력
>> /bin/bash라는 쉘이 존재하지 않을 경우 /bin/sh를 사용해 접속
'Docker' 카테고리의 다른 글
Dockerfile 이미지 빌드하기 (2) | 2023.06.01 |
---|---|
Docker volume (4) | 2023.06.01 |
Docker compose, port forwarding (2) | 2023.05.31 |
Linux Ubuntu 환경 구성하기 (1) | 2023.05.31 |
Linux 명령어 (3) | 2023.05.31 |