








인스턴스 ID 클릭 후 세부정보 > 보안 > 보안 그룹 클릭
설정 후 규칙 저장


애플리케이션을 컨테이너 안에 패키징하여 배포하고 실행할 수 있게 해주는 플랫폼
컨테이너는 애플리케이션과 그 종속성을 함께 묶어 일관된 환경을 제공하며, 가상 머신과는 달리 더 가볍고 빠르게 시작
Docker를 사용하면 애플리케이션의 개발, 테스트, 배포 과정을 자동화하고 일관된 환경을 제공하여 개발과 운영 간의 차이를 줄일 수 있음

Docker Engine: 컨테이너를 생성하고 실행하는 데 필요한 핵심 소프트웨어
Docker Images: 컨테이너를 실행하는 데 필요한 모든 파일과 설정을 포함하는 읽기 전용 템플릿
Docker Containers: 애플리케이션을 실행하는 독립된 프로세스 환경
Docker Hub: Docker 이미지를 저장하고 공유할 수 있는 레지스트리 서비스
sudo apt update
sudo apt install docker.io
docker -v
sudo 명령어를 실행하게 되면 root 권한으로 명령어를 실행하게 된다.
즉, 하나의 명령에 대하여 일시적으로 root 권한을 사용
Ubuntu에서는 기본적으로 root 계정의 패스워드가 잠겨져있다.
그러므로 root로 직접적으로 로그인이 불가능하고 su 명령어를 통해서도 root 계정으로 로그인이 불가능(root로 로그인을 할 순 있지만 권장하지 않음)
sudo 명령어를 통해 권한이 있는 계정(일반적으로 관리자 계정; root를 말하는게 아니다)이 root 계정의 패스워드를 몰라도 root 권한으로 프로그램을 실행
Docker의 명령어는 docker run, docker push와 같이 docker <명령> 형식
이미지 검색
docker search <이미지 이름>
이미지 받아오기
latest를 설정하면 최신 버전을 받을 수 있음docker pull <이미지 이름>:<태그>
다운받은 이미지 목록 출력
docker images
이미지를 파일로 출력
docker save <이미지 이름> > <이름>.tar
이미지 삭제
docker rmi <이미지 이름>:<태그>
dockerfile로 이미지 생성
--tag 옵션으로 이미지 이름과 태그를 설정 가능docker build <옵션> 경로>
컨테이너를 이미지로 만들기
docker commit <컨테이너 이름> <이미지 이름>:<태그>
컨테이너 생성
--name 옵션으로 컨테이너에 이름을 지정할 수 있음, 이름을 지정하지 않으면 docker가 자동으로 이름을 생성하여 지정docker run <옵션> <이미지 이름> <실행할 파일>
컨테이너 목록 확인
-a 옵션을 사용하면 정지된 컨테이너까지 모두 출력docker ps
컨테이너 실행
restart로 재시작 가능docker start <컨테이너 이름>
컨테이너 접속
docker attach <컨테이너 이름>
컨테이너 정지
docker stop <컨테이너 이름>
컨테이너 삭제
docker rm <컨테이너 이름>
외부에서 컨테이너 안의 명령 실행
docker exec <컨테이너 이름> <명령> <매개 변수>
컨테이너 내의 파일을 로컬에 복사
docker cp <컨테이너 이름>:/복사할 파일 위치/파일이름/복사받을 파일 위치/파일 이름
컨테이너 생성 후 이미지로부터 변경된 파일 확인
docker diff <컨테이너 이름>
컨테이너 세부 정보 확인
docker inspect
컨테이너를 파일로 출력
docker export <컨테이너 이름> > <컨테이너 이름>.tar
https://rattle-coal-060.notion.site/docker-c73ca0006101458f811a87dc6ab978c8

