Docker Port Docker Port컨테이너는 가상 머신처럼 가상 IP를 부여받는다. 도커에서는 기본적으로 172.17.0.x 를 순차적으로 할당한다.아무 설정도 하지 않았다면, 기본적으로 컨테이너는 도커가 설치된 호스트에서만 접근 가능하다. 컨테이너를 외부에서 접속하기 위해서는 -p 옵션을 사용하여 컨테이너의 포트를 호스트의 포트에 매핑해야 한다.형식은 [호스트의 포트]:[컨테이너의 포트] 이다.예를 들어, 호스트의 7777번 포트를 컨테이너의 80번 포트와 연결하려면 7777:80 과 같이 입력하면 된다.호스트의 특정 IP를 사용하려면 192.168.56.100:7777:80 처럼 바인딩 할 IP와 포트를 명시하면 된다.만약 여러 개의 포트를 개방하려면 -p 옵션을 여러 번 사용하여 설정하면 된다. 원래는 d.. Docker container 목록, 삭제 컨테이너 목록docker ps 명령어를 사용하면 실행중인 컨테이너들을 볼 수 있다.-a 옵션을 추가하면 정지된 컨테이너 포함 모든 컨테이너를 볼 수 있다CONTAINER ID : 컨테이너에 부여된 고유의 IDIMAGE : 컨테이너를 생성할 때 사용된 이미지COMMAND : 컨테이너가 시작될 때 실행될 명령어 /bin/bash기 때문에 -it로 터미널 사용이 가능했다.CREATED : 컨테이너가 생성되고 난 뒤 얼마나 지났는지 나타낸다.PORTS : 컨테이너가 개방한 포트와 호스트에 연결한 포트를 나타낸다.NAMES : 컨테이너의 이름이다 --name으로 지정하지 않으면 임의로 생성한다. docker rename으로 변경 가능하다. 컨테이너 삭제더 이상 사용하지 않는 컨테이너를 삭제할 때는 docker.. Docker 컨테이너와 이미지 Image이미지는 컨테이너를 생성할 때 필요한 요소이다. 가상 머신을 생성할 때 사용하는 iso 파일과 비슷하다고 할 수 있다.여러 개의 계층으로 이루어진 바이너리 파일로 존재하며, 컨테이너를 생성할 때 읽기 전용으로 사용된다.즉, 컨테이너를 생성하는데 사용되는 설계도인 셈이다. 이미지는 도커 명령어로 내려받을 수 있기 때문에 별도로설치하거나 할 필요는 없다.일반적으로 도커에서 이미지의 이름은 다음과 같은 형태로 구성된다.[저장소 이름]/[이미지이름]:[태그]Ex. exrepo/ubuntu:14.04Ex. ubuntu:latest저장소 : 이미지가 저장된 저장소를 의미한다. 도커에서 기본적으로 제공하는 도커 허브의 공식 이미지일 경우, 저장소 이름을 생략 가능하다.이미지 이름 : 이미지가 어떤 역할을 하.. Docker 설치 Docker 설치 https://docs.docker.com/engine/install/ InstallLearn how to choose the best method for you to install Docker Engine. This client-server application is available on Linux, Mac, Windows, and as a static binary.docs.docker.com공식 Docs 페이지를 참고하여 해당하는 운영체제에 맞게 설치한다. Ubuntu 기준1. 충돌 가능한 패키지 제거#충돌하는 모든 패키지를 제거 for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker con.. Docker Docker?리눅스 컨테이너에 여러 기능을 추가하여 애플리케이션을 컨테이너로서 쉽게 사용할 수 있도록 만들어진 오픈소스이다.기존 솔루션인 가상 머신과 달리 도커 컨테이너는 성능의 손실이 거의 없어서 차세대 클라우드 인프라 솔루션으로서 많은사랑을 받고 있다. Go 언어(구글에서 개발한 언어)로 작성되어 있다. 가상 머신과의 차이점?기존 가상화 기술은 하이퍼바이저를 이용해 여러 운영체제(Guest OS)를 하나의 호스트에서 생성하여 사용하는 방식이었다. 이러한 운영체제는 가상 머신이라는 단위로 구별되었고 이러한 가상 머신은 다른 가상 머신과완전히 독립된 공간과 시스템을 할당받아 사용한다. 대표적인 가상화 툴로 Virtual Box, VMware 등이 있다.즉, 완벽한 운영체제를 생성할 수 있다는 장점이.. Docker volume에 대하여(익명, 네임드, 바인딩) 볼륨의 종류 컨테이너에 마운트 할 수 있는 볼륨의 종류는 크게 3가지가 있다. 1. 익명 볼륨 2. 네임드 볼륨 3. 바인딩 볼륨 하나씩 알아보자 익명 볼륨 말 그대로 익명의 볼륨이다 딱히 이름이 정해진 것이 아니며, 그냥 컨테이너에 붙어 있는 볼륨이다 호스트의 어딘가에 연결되어 있으며, 컨테이너의 특정 데이터가 이곳에 저장된다 그리고 컨테이너 삭제 시 삭제가 된다. 이러한 특성 때문에 주로 중요하지 않은 파일의 임시 저장 목적으로 사용하게 된다 그러한 예는 다음과 같다 EX.) 내부서버의 로그를 보고 싶으나, 딱히 중요한 정보는 아니며 저장할 필요가 없을 때 익명 볼륨을 만들어 볼륨의 데이터를 확인 가능 형식 : docker run -v [컨테이너 내부의 경로] [이미지] ex) docker run -.. 도커로 컨테이너끼리 통신하는법 여기 파일들이 있다 각 파일들이 할 역할은 다음과 같다 backend = 몽고DB컨테이너와 통신하여 DB에 있는 내용을 가져온다 frontend = backend에서 가져온 내용을 웹 브라우저에 표시해 준다 즉 , 다음과 같이 되는것이다 그래서 위 그림처럼 우리는 총 3개의 컨테이너가 올라갈 예정이다 1. DataBase를 담당할 MongoDB 컨테이너 2. Backend 컨테이너 3. Frontend 컨테이너 몽고DB이미지는 docker pull을 이용하여 다운받고 백엔드와 프론드엔드는 각각 도커파일을 작성하여 빌드해주자 여기서 중요한 것은 컨테이너가 통신을 하려면 직접 IP를 할당하거나 같은 네트워크에 있어야 한다 docker network create [네트워크 이름] 명령어를 이용하여 네트워크를 .. 도커 Nginx 올리기 저번에 공부한 대로 Nginx의 이미지를 이용하여 컨테이너를 올려보자 도커엔진이 설치되어 있어야 한다 이미지 다운받기 docker의 명령은 대부분 docker로 시작한다 docekr pull nginx를 입력해주자 docker hub에서 nginx라는 이미지를 가져오겠다 라는 뜻이다 입력하면 이렇게 Nginx이미지를 가져오게 된다. 다 되었으면 이미지가 잘 받아졌는지 확인을 해 보자 docker image ls 를 입력 맨 아랫줄에 nginx 이미지가 보인다! 이미지가 잘 받아졌다는 뜻이다! 이제 이 이미지를 토대로 컨테이너를 올려보자 컨테이너 실행 및 Nginx 확인 docker run -d -p 80:80 nginx 를 입력하자 여기명령어의 뜻은 run = 컨테이너를 올리겠다. -d = detach .. 도커 - 컨테이너, 이미지 도커를 시작하기에 앞서 알아야 할 개념들이다 컨테이너란? 하나의 코드패키지이다. 우리가 만든 프로그램의 코드와 그 코드를 실행하기 위한 도구가 포함된 박스라고 보면 된다! 이런 컨테이너라는 박스 안에 코드들이 들어가 있는 것이다. 이런 컨테이너를 사용하였을때 몇가지 장점이 있다 1. 버전관리에 용이하다 예를 들어, 개발할때 구버전에서는 작동하지 않는 코드가 있을 수 있다 이때 컨테이너를 이용하여 컨테이너에 신 버전을 고정하여 해결이 가능하다. 2. 협업에 있어서 용이하다. 회사에서 각각의 개발환경이 다를 수 있는데, 이때 버전 충돌이 일어날 수 있다. 하지만 컨테이너를 이용하여 해결 가능하다. 또한 컨테이너를 이미지화 하여 공유와 다운로드가 쉽다. 3. 리소스 사용면에서 효율적이다. 컨테이너를 사용하지 .. 이전 1 다음