카테고리 없음

[Windows] docker 설치와 컨테이너 실행

vhxpffltm 2021. 8. 26. 21:53

docker에 대한 개념과 이해는 다른 글이나 책에서 쉽게 확인할 수 있다.

 

docker 설치하기

 

먼저 설치부터 해보자

 

쉽게 docker 공식 홈페이지에서 Windows 10 download로 설치를 진행하면 된다.

 

https://www.docker.com/products/docker-desktop

 

*exe 파일을 실행하면 docker가 설치되는데 설치하고 확인할때, wsl 2 installation is incomplete

의 오류가 발생할 수 있다. WSL 2 engine이 필요한거니 설치해준다.

https://stackoverflow.com/questions/63845591/docker-wsl-2-installation-is-incomplete

 

설치가 다 완료되면 오른쪽 하단의 백그라운드 아이콘에 고래 모양을 확인할 수 있다.

여기서는 명령어 위주로 시작한다. 자세한 내용은 Refernce를 참고하면 좋다.

 

항상 설치를 했으면 버전 확인을 통해 제대로 설치가 됐는지 확인하는 과정이다

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
C:\Users\htk>docker --version
Docker version 20.10.8, build 3967b7d
 
C:\Users\htk>docker version
Client:
 Cloud integration: 1.0.17
 Version:           20.10.8
 API version:       1.41
 Go version:        go1.16.6
 Git commit:        3967b7d
 Built:             Fri Jul 30 19:58:50 2021
 OS/Arch:           windows/amd64
 Context:           default
 Experimental:      true
 
Server: Docker Engine - Community
 Engine:
  Version:          20.10.8
  API version:      1.41 (minimum version 1.12)
  Go version:       go1.16.6
  Git commit:       75249d8
  Built:            Fri Jul 30 19:52:10 2021
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.4.9
  GitCommit:        e25210fe30a0a703442421b0f60afac609f950a3
 runc:
  Version:          1.0.1
  GitCommit:        v1.0.1-0-g4144b63
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0
cs

 

docker image / Container

docker에 대한 개념을 쉽게 이해할수 있는 구조이다.

 

우리가 앱 스토어에서 프로그램을 받고 그것을 실행하는 과정을 오른쪽의 docker에 있는 과정으로 나타낸 것이다.

이제 이 작업을 진행한다.

 

 

https://hub.docker.com/search?q=&type=image 

 

해당 링크에 들어가서 원하는 Image를 다운받는다. 필자는 jenkins/jenkins와 httpd(아파치)를 설치하였다. 두 이미지에서는 명령어로 어떻게 다운받는지 설명되어 있다. 

 

그림에도 있듯이 이미지를 가져오는것은 pull 명령이다.  -docker pull httpd-

 

 

설치를 완료했다면 우리가 가지고 있는 이미지가 어떤것인지 확인할 필요가 있다.

 

1
2
3
4
C:\Users\htk>docker images
REPOSITORY        TAG       IMAGE ID       CREATED      SIZE
jenkins/jenkins   latest    cb79d47c4661   6 days ago   678MB
httpd             latest    c8ca530172a8   7 days ago   138MB
cs

 

위와 같이 가져온 이미지를 실행하는 것은 run명령으로 하면 될것 같다.

 

Windows에서는 GUI도 제공하므로 직관적으로 쉽게 이해할 수 있다. 

보통 --name 옵션으로 컨테이너의 이름을 정한다.

 

 

https://docs.docker.com/engine/reference/commandline/logs/

이 문서에서 필요한 여러 명령어들에 대해 확인할 수 있다.

 

여기서는 간단하게 컨테이너를 실행해보자.

 

1
C:\Users\htk>docker run --name Test httpd
cs

 

이렇게하면 Test란 이름의 httpd 컨테이너가 생성된 것이다.

 

하나더 만들어서 호스트 포트와 컨테이너 포트를 연결하여 컨테이너를 생성해본다.

 

docker run -i -p 8088:80 httpd

위 명령어로 컨테이너를 실행하고 localhost:8088번으로 이동하면 실행중인 컨테이너에 접속할 수 있다.

docker log를 실행시켜 새로고침을 할때마다 변화되는 로그로 확인할 수 있다.

 

 

 

Refernce: 생활코딩

https://www.youtube.com/watch?v=Ps8HDIAyPD0&list=PLuHgQVnccGMDeMJsGq2O-55Ymtx0IdKWf&index=1 

http://redbyzan.github.io/writing/docker-favorite/