본문 바로가기

반응형

도커

(7)
호스트와 컨테이너의 파일 시스템 연결 https://youtu.be/AmSKD4p-jhw 도커 안에서 파일을 직접 수정하는 것은 매우 불편하고 위험한 작업이다 컨테이너를 사용하는 이유는 필요할 때 언제든지 생성했다가, 필요없어지면 언제든지 지울 수 있기 때문이다 docker run -p 8888:80 -v [호스트 디렉토리]:[컨테이너 디렉토리] httpd docker run -p 8888:80 -v C:\workspace\htdocs:/usr/local/apache2/htdocs/ httpd 호스트인 내 컴퓨터의 파일과 컨테이너의 파일이 공유 상태가 되었다 연결이 유지된 상태에서, 내 컴퓨터의 index.html을 수정하면 컨테이너의 index.html도 수정된다
명령어 실행, index.html 수정 https://youtu.be/P0ZFyB4iQd0 https://docs.docker.com/engine/reference/commandline/exec/ 리눅스 명령어 pwd를 입력하면 호스트 안에서 pwd가 실행된게 아니라, 컨테이너 안으로 들어가서 pwd 명령어가 실행된다 docker exec [OPTIONS] CONTAINER COMMAND [ARG...] docker exec -it ws3 /bin/sh ws3 컨테이너에서 연결을 유지하면서 본쉘을 실행하는 명령어 쉘 프로그램들은 사용자의 명령어를 받아서 운영체제에 전달하는 기능을 한다 --interactive , -iKeep STDIN open even if not attached --tty , -tAllocate a pseudo-TTY 터미..
도커와 네트워크 https://youtu.be/SJFO2w5Q2HI 도커를 이용해 웹 서버를 설치하면, 웹 서버는 컨테이너에 설치된다 이 컨테이너가 설치된 운영체제를 도커 호스트로 부른다 하나의 도커 호스트에는 여러 개의 컨테이너가 만들어질 수 있다 컨테이너와 호스트 모두 독립적인 실행환경이기 때문에, 각자 독립적인 포트와 파일 시스템을 가지고 있다 웹 서버로 접속하려면 호스트와 컨테이너를 연결해야 한다 호스트의 80번 포트와 컨테이너의 80번 포트를 연결해주어야한다 docker run -p 80:80 httpd 앞의 80은 호스트의 포트, 뒤의 80은 컨테이너의 포트이다 이렇게 설정을 해주면 호스트의 80번 포트로 들어온 신호가 컨테이너의 80번 포트로 전송된다 이렇게 연결된 포트로 신호를 전송하는 것을 포트 포워딩이..
이미지 run https://youtu.be/iLcUr0EQdrM https://docs.docker.com/engine/reference/commandline/run/ cmd 명령어 docker run httpd httpd 이미지 run docker ps 실행 중인 컨테이너 표시 (httpd를 실행 중인 cmd는 그대로 두고, 새 cmd를 띄워서 입력) docker run --name [이름] httpd httpd를 ws라는 이름을 정해주고 이미지 run docker stop [이름] 또는 [컨테이너 ID] 컨테이너 실행 중지 ws 컨테이너를 stop으로 중지하고 docker ps를 하면, ws는 보이지 않는다 docker ps -a 중지된 상태까지 모두 표시 docker start [이름] 중지시켰던 도커 시작 d..
이미지 pull https://youtu.be/EbTJtanJUfE 앱을 찾고 싶을 때 앱스토어에서 찾듯이, 도커 허브에서 필요한 소프트웨어들을 찾을 수 있다 앱스토어에서 다운받아 저장한 것이 프로그램이듯이, 도커 허브에서 다운받아 가지고 있는 것을 이미지로 부른다 프로그램을 실행하면 프로세스가 동작하듯이, 이미지를 실행하는 것을 컨테이너로 부른다 프로그램이 여러 개의 프로세스를 가질 수 있는 것처럼, 이미지도 여러 개의 컨테이너를 가질 수 있다 도커 허브에서 이미지를 다운받는 행위를 pull이라고 하며, 이미지를 실행시키는 행위를 run이라고 한다 https://hub.docker.com/ 도커 허브 주소 도커 허브로 가서 익스플로어 메뉴라 간 다음, 컨테이너에 보면, 매우 많은 컨테이너들을 볼 수 있다 아파치 웹 서..
도커 설치 https://youtu.be/L3ZpudSF0HU 도커와 같은 컨테이너 기술은 리눅스 운영체제의 기술이다 도커 위에서 돌아가는 컨테이너, 컨테이너 안에서 동작하는 각각의 앱들은 리눅스 운영체제에서 동작하는 앱들이다 만약에 자신의 컴퓨터가 리눅스 운영체제가 아니라면, 윈도우나 맥에는 가상 머신을 깔고 그 가상 머신에 리눅스 운영체제를 깔면 리눅스 운영체제 위에서 도커와 같은 컨테이너 기술을 사용할수 있게 되는 것이다 도커가 알아서 가상 머신을 만들어주고 , 그 위에 리눅스를 설치해준다 이런 이유로 사용하고 있는 운영체제가 리눅스라면 그 위에서 바로 도커가 실행되기 때문에 성능 저하가 전혀 없다 윈도우나 맥은 가상 머신을 설치하기 때문에 어느 정도 속도 저하를 감수해야 한다 https://www.docke..
도커 https://youtu.be/Ps8HDIAyPD0 내 컴퓨터에서 어떤 앱을 만들기 위해서는, 운영체제의 여러 소프트웨어를 설치해야한다 웹 개발을 한다고 하면, 웹 서버나 데이터베이스를 설치해야한다 그런데 설치하는 과정에서 문제가 생길 수 있다 웹 서버를 만든 사람이 컴퓨터를 구해서 적당한 운영체제를 깔고, 그 위에 웹 서버를 설치한 다음에 그걸 나눠 준다면 얼마나 좋을까 데이터베이스도 마찬가지, 전문가가 알아서 잘 설치한 것이니까 실행되지 않을까 걱정할 필요도 없다 그리고 우리의 앱은 네트워크로 통신해서 이것들을 사용할 수 있다면 얼마나 좋을까 하나의 컴퓨터에 가상으로 컴퓨터를 만들고 그 위에 운영체제를 설치한 후에 거기에 웹 서버를 설치하면 어떨까 vm웨어나 버츄얼박스를 떠올리면 된다 그런데 이걸 위..

반응형