도커는 컨테이너 기술을 기반으로 한 일종의 가상화 플랫폼입니다. 가상화란 물리적 자원인 하드웨어를 효율적으로 활용하기 위해서 하드웨어 공간 위에 가상의 머신을 만드는 기술이고, 컨테이너란 컨테이너가 실행되고 있는 호스트 os의 기능을 그대로 사용하면서 프로세스를 격리해 독립된 환경을 만드는 기술
Docker 환경 설치
sudo apt update
sudo apt install docker.io
sudo service docker start sudo docker versionsudo docker -v
이미지 다운로드
sudo docker search nginxsudo docker pull nginxsudo docker pull ubuntu



sudo docker imagessudo docker commit -a [컨테이너 이름] [이미지명 : 태그]
sudo docker run -itd -p 8888:80 --name=webapp nginxsudo docker pssudo docker ps -asudo docker stats [컨테이너 이름]

sudo docker [컨테이너 ID 또는 이름]
sudo docker stop [컨테이너 ID 또는 이름]sudo docker stop webappdocker stop $(docker ps -q -f status=running)sudo docker system prune
sudo docker rm [컨테이너 ID]sudo docker rm basudo docker exec [컨테이너 id 또는 이름] /bin/sh





도커는 경량화 되어 있기에 직접 컨테이너 내에서 편집보다는 편집 후 복사하는 방식과 호스트와 컨테이너의 디렉토리 연결하는 방식 등이 있다.
sudo docker run -itd -p 8888:80 --name=webapp nginx





sudo mkdir ngnix_logsudo docker run -idt -p 8080:80 -v /home/kali/ngnix_log:/var/log/nginx nginx:1.19



sudo service apache2 stopsudo apt updatesudo apt install nginx
sudo docker run -itd -p 5001:80 --name=nginx_web01 -v /home/kali/web01:/usr/share/nginx/html nginx
sudo docker run -itd -p 5002:80 --name=nginx_web02 -v /home/kali/web02:/usr/share/nginx/html nginx
sudo docker run -itd -p 5003:80 --name=nginx_web03 -v /home/kali/web03:/usr/share/nginx/html nginx


sudo vim /etc/nginx/nginx.confupstream backend-lb {
server 127.0.0.1:5001;
server 127.0.0.1:5002;
server 127.0.0.1:5003;
}
server {
listen 80 default_server;
listen [::]:80 default_server;
location / {
proxy_pass http://backend-lb;
}


https://velog.io/@markany/%EB%8F%84%EC%BB%A4%EC%97%90-%EB%8C%80%ED%95%9C-%EC%96%B4%EB%96%A4-%EA%B2%83-1.-%EB%8F%84%EC%BB%A4%EB%9E%80-%EB%AC%B4%EC%97%87%EC%9D%B8%EA%B0%80 (도커란)
https://bio-info.tistory.com/136 (도커 옵션에 대해서)