도커는 프로그램과 실행 환경을 하나의 상자에 담아 어디서든 똑같이 실행할 수 있게 해주는 도구이다
웹개발이나 어플리케이션을 만들기 위해서는 운영체제위에 많은 것들을 설치해야한다
설치하는 것에는 따져봐야할것이 한 두개가 아니다 버전이 맞는지, 환경변수가 맞는지...

그렇다면 실행하는 데 필요한 모든 것들을 한 상자에 담아서 나에게 주면 어떨까?
→ 이 "상자"가 바로 도커 컨테이너(container)다
하지만 컨테이너 기술은 리눅스 운영체제의 기능이다
때문에 리눅스가 아닌 운영체제라면 도커를 쓰기 위해서는 가상 머신(가상 컴퓨터)에 리눅스 운영체제를 설치하고 사용하면 된다 (성능이 저하될 수 있다)
도커에는 도커 허브, 이미지, 컨테이너가 존재한다

도커 허브는 일종의 저장소다 이미지를 다운(pull)받을 수 있고
이미지를 실행(run)시키면 컨테이너라는 결과가 나온다
도커 허브에서는 많은 이미지를 제공하고있다
아파치 이미지를 받아보자

대시보드를 사용한다면 pull을 눌러주면 된다
pull을 눌렀다면
이미지 탭에서 httpd를 확인할 수 있다

run을 눌러서 포트를 설정하거나 이름을 설정할 수 있다

컨테이너 탭에서 컨테이너의 로그등을 확인할 수 있다


http://localhost:8082/ 로 접속해보자
로그가 잘 찍힌다
[16/Jul/2025:07:25:14 +0000] "GET / HTTP/1.1" 200 45
[16/Jul/2025:07:25:14 +0000] "GET /favicon.ico HTTP/1.1" 404 196
컨테이너를 계속 켜놓으면 그만큼 컴퓨터의 자원을 많이 잡아먹는다
안쓸때는 컨테이너를 꺼두도록하자
docker pull
docker run --name <컨테이너이름> -p <호스트포트>:80 httpd
명렁어를 통해 설치,실행이 가능하다
docker run --name ws1 -p 8088:80 httpd
나는 이름은 ws1 포트는 8088에서 80번으로 가게 설정해두었다
docker log -f <컨테이너이름>
으로 로그를 찍을 수 있다
http://localhost:8081/ 링크를 확인하면 컨테이너가 잘 동작하는지 확인 할 수 있다

잘 동작하는 듯하다
컨테이너를 계속 켜놓으면 그만큼 컴퓨터의 자원을 많이 잡아먹는다
안쓸때는 컨테이너를 꺼두도록하자
docker stop <컨테이너이름>