ex)
-> 개발팀에서 웹소스 공유받음.(js, css, html등)
-> nginx는 웹서버 역할을 하는 애플리케이션을 다운받음(nginx:1.25.3-alpine(base image))
-> 여기에 웹소스를 더하면 이것이 Dokcerfile임.
-> 이를 새로운 이미지로 생성(docker build) ==> docker build -t 이미지:태그Dockerfile_경로
-> docker run을 통해 컨테이너를 생성함 / docker compose (docker-compse.yaml)
-> 컨테이너 동작 테스트 수행
-> 제대로 작동하면 이 새로운 image를 공유해야함.
-> hub.docker.com과 같은 registry(이미지 등록소) push 혹은 Dockerfile(코드)을 github등과 같은 곳에 공유
https://docs.docker.com/engine/install/ubuntu/ 의 과정과 동일
# update
sudo apt-get update
#docker을 이용하기 위한 패키지
sudo apt-get install ca-certificates curl
# 키링값 저장 필요
sudo install -m 0755 -d /etc/apt/keyrings
#키값 다운로드
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
#권한 변경
sudo chmod a+r /etc/apt/keyrings/docker.asc
#리파짓토리 추가 -> 어디로부터 추가를 받냐
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
#신규 리파짓토리가 추가되면 업데이트 꼭 필요
sudo apt-get update
# docker ce 버전 설치
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
설치 버전 확인
sudo docker version
docker는 기본적으로 root에 포함되어 있기 때문에 sudo가 필요함
만약 sudo를 붙이기 싫으면 docker그룹에 계정을 소속시킴
# 사용자 속성변경 (docker 그룹에 계정 추가)
sudo usermod -aG docker 계정
#
sudo systemctl daemon-reload
sudo systemctl enable docker
sudo systemctl restart docker
sudo systemctl status containerd.service
sudo reboot