어떤 애플리케이션을 만들기 위해서는 운영체제에 여러 소프트웨어를 깔아야 함
웹개발을 하려고 하면 Web server, database 등을 깔아야 함
이런것을 설치하는 것은 까다롭고 귀찮다.
웹서버를 만든 사람이 컴퓨터를 구해서 적당한 운영체제를 깔고 그 위에 웹서버, DB를 설치한 다음 그걸 준다면 좋겠다....
우리의 앱은 네트워크로 통신해서 받은 컴퓨터를 사용할 수 있으면 좋겠다....
어떤 프로그램이 필요할떄 app store에서 찾아봄
--> docker hub라고 하는 레지스트리라고 불리는 서비스에서 필요한 것을 찾음
app store에서 다운받아서 컴퓨터에 저장한 것을 program 이라고 함
--> docker hub에서 찾아서 다운받아서 컴퓨터에 가지고 있는 것을 image라고 함
program을 실행하면 process라는 것이 동작함
--> image를 실행하는 것을 container라고 함
program이 여러 process를 가질 수 있음
--> image도 여러개의 container를 가질 수 있음
docker hub에서 image를 다운받는 행위를 pull이라고 함
image를 실행시키는 행위를 run이라고 함
run을 하게되면 image가 container가 되고 그 container가 실행되면서 container 안에 포함되어있는 실행되어지도록 조치되어진 program이 실행이 되면서 그 program을 사용할 수 있게 됨
Explore 클릭 하면 Docker, Containers, Plugins 3개의 메뉴가 있는데 Containers를 클릭
인기있는 container들이 있고 카테고리를 통해서 원하는 소프트웨어가 설치되어있는 container를 찾을 수 있음
( 우리는 apache web server라는 프로그램을 container 위에서 실행시키고 싶음 --> apache web server가 설치된 container를 찾자 )
apache web server는 httpd라는 이름을 가지고있다. 검색해보자.
--> official image라고 되어있는데,
이것은 docker에서 공식적으로 관리하는 image라는 뜻임 --> 클릭
apache web server를 다운받을 수 있는 명령어를 알려준다.
--> docker pull httpd
그리고 httpd의 사용설명서가 나와있다.
내 컴퓨터에 이미지를 다운받아보자.
docs를 확인해보자.
Reference에서 Command-line reference에서 docker CLI 클릭
docker pull을 클릭
--> 레지스트리로부터 이미지를 다운로드 받아올 수 있다.
docker pull httpd
docker images