본문 바로가기
반응형

Docker14

[Kubernetes] Deployment (2) 앞선 포스팅에서는 Deployment을 생성하는 2가지 방법과, deployment yaml파일의 구조에 대해 알아봤습니다. 이번 포스팅에서는 Deployment yaml파일로 서비스를 구성하는 방법에 대해 포스팅하려 합니다. 다음 명령어는 nginx기반의 LoadBalancer 유형의 서비스를 외부로 노출시켜 사용 가능하게 하는 명령어입니다 $ kubectl expose deployment my-nginx --port=80 --type=LoadBalancer 이 명령어 또한 yaml파일로 구성할 수 있습니다. 현재 nginx.yaml파일은 다음과 같은 내용으로 되어있습니다. 그럼 LoadBalancer 서비스를 제공하는 nginx-svc.yaml 파일을 다음과 같이 생성해주겠습니다. nginx-svc... 2021. 6. 11.
[Kubernetes] Deployment (1) Kubernetes가 처리하는 기본 단위인 deployment를 생성하는 방법은 2가지가 있습니다. 명령어로 생성 yaml file로 생성 명령어로는 다음과 같이 생성합니다. $ kubectl create deployment [이름] --image=[이미지] yaml 파일로는 다음과 같이 생성합니다. $ kubectl apply -f [yaml 파일 이름] 그럼 nginx deployment를 yaml 파일을 생성해 deployment를 만들어 보겠습니다. $ vi nginx.yaml 명령어를 통해 다음과 같은 내용을 포함하는 yaml파일을 만들어줍니다. 그리고 다음 명령어를 입력해 해당 yaml파일로부터 deployment를 생성해줍니다. $ kubectl apply -f nginx.yaml $ kub.. 2021. 6. 11.
[Kubernetes] Kubernetes 시작하기 (2) 앞의 포스팅에서 Kubernetes를 설치하고 기본적인 사용법을 알아봤습니다. 이번 포스팅에서는 Kubernetes에 대해 좀 더 자세히 알아보겠습니다. 일단 주의할 점은 minikube는 docker와 달리 실행한 상태를 유지해야 한다는 것입니다. Kubernetes는 기본적으로 master node와 worker node로 구성되어있습니다. Master node는 어느 node에 놓고 실행할 건지 결정하고 전체적인 node들을 관리합니다. Worker node는 말 그대로 일을 하는 작업 node입니다. Docker에서는 컨테이너가 작업 단위이지만, Kubernetes에서는 pods, deployment들이 작업 단위, 즉 처리 대상입니다. Pod는 컨테이너를 관리하면서 다른 컨테이너와 통신을 담당하.. 2021. 6. 11.
[Docker] Docker Compose 이전 포스팅에서는 Dockerfile로 이미지를 빌드해서 사용하는 방법에 대해 포스팅했습니다. 이번 포스팅에서는 Docker Compose를 사용하는 방법에 대해 포스팅하려 합니다. Docker Compose는 하나의 애플리케이션을 여러 개의 Docker로 구성하는 방법입니다. Micro Service Architecture 처럼 컨테이너 간의 연결을 구성하고 실행하는 방법입니다. Docker Compose를 구성하는 방법으로는 명령어와 yaml파일의 사용이 있습니다. 다음은 Docker Compose의 기본적인 예시입니다. version: "3.9" # optional since v1.27.0 services: web: build: . ports: - "5000:5000" volumes: - .:/co.. 2021. 6. 11.
[Docker] Dockerfile (1) Dockerfile 앞서 포스팅한 내용으로는 commit명령어로 이미지를 만들 수 있었습니다. 이번 포스팅에서는 dockerfile로 이미지를 만들어 보겠습니다. Dockerfile은 docker 이미지 생성을 위한 이미지 설정 파일입니다. Dockerfile에 사용할 수 있는 명령어들을 사용해서 docker image를 생성합니다. 다음 명령어로 dockerfile 생성을 시작해 봅니다. $ vi Dockerfile Dockerfile을 작성할 때 다음 명령어들을 설정해주면 됩니다. FROM [이미지] / FROM [이미지] : [태그] - 어떤 이미지를 기반으로 이미지를 생성할지 설정 (필수) MAINTAINER [작성자 정보] - 이미지를 생성한 사람의 정보를 설정 RUN [명령어] - FROM에서.. 2021. 6. 11.
[Docker] Docker 이미지 다루기 (1) 이번 포스팅에서는 docker의 이미지를 다루고 핸들링하는 방법에 대해 포스팅해보겠습니다. 예를 들어 $ docker run -it ubuntu 명령어를 통해 ubuntu 이미지를 기반으로 한 컨테이너를 생성하고, 다음과 같은 명령어로 환경을 설정해봅니다. $ docker run -it ubuntu $ apt -y update; apt -y upgrade; apt -y install net-tools 그럼 이제 위 컨테이너는 apt update, upgrade가 모두 완료되고, net-tools가 설치된 컨테이너가 됩니다. 이 컨테이너를 다른 사람과 공유하기 위해 docker commit 명령어를 사용해 이미지를 생성해서 공유할 수 있습니다. 즉, apt update, upgrade, net-tools가.. 2021. 6. 11.
[Docker] Apache 사용해보기 이전 포스팅에서는 docker에서 nginx 컨테이너를 사용해보았습니다. 이번 포스팅에서는 apache 컨테이너를 사용해보겠습니다. 먼저 apache이미지로 컨테이너를 생성하기 위해 다음과 같은 명령어를 입력해줍니다. $ docker run -dit -p 9000:80 --name my-httpd httpd Apache는 httpd라는 이름도 가지고 있습니다. 9000번으로 설정해준 포트를 브라우저를 통해 들어가면 다음과 같은 결과가 나타납니다. 그리고 다음 명령어를 통해 실행 중인 apache 컨테이너에 접근해 보겠습니다. $ docker exec -it [컨테이너 ID] bash Apache 컨테이너에 들어가서 htdocs의 index.html 파일을 확인해보면 It works문구가 들어있는 것을 확.. 2021. 6. 10.
[Docker] Docker Volume 사용하기 Docker volume이란 디렉토리를 매핑하는 것입니다. 즉, Docker host의 디렉토리와, container의 디렉토리를 연결하는 것입니다. 여태까지 포스팅한 글에서 ubuntu 이미지를 기반으로 한 컨테이너를 생성해서 nginx를 설치해서 구동도 해보고, nginx이미지 자체를 내려받아서 nginx 컨테이너를 구동해봤습니다. 만약 nginx이미지 자체를 내려받아서 컨테이너를 구동하는 명령어에서 실수로 포트를 매핑하지 않으면 어떻게 될까요? 다음과 같은 명령어를 봅시다. $ docker run -it nginx 위와 같이 포트를 매핑 못하고 nginx를 만들어버리면 접속이 불가능합니다. 이런 nginx컨테이너를 다시 매핑해주고 싶어도 불가능하고, 다시 만들어줘야 합니다. 그럼 동일한 nginx컨.. 2021. 6. 10.
[Docker] Nginx 사용해보기 Nginx 설치하고 사용해보기 이번 포스팅에서는 Docker로 nginx를 사용해 보겠습니다. 먼저 다음 명령어로 ubuntu이미지를 기반으로 한 컨테이너를 실행하고 접근하겠습니다 $ docker run -i -t ubuntu bash 그리고 다음 명령어를 통해 환경을 설정해 주겠습니다 $ apt -y update $ apt -y upgrade 다음 명령어를 통해 nginx를 컨테이너에 설치해 주겠습니다 $ apt -y install nginx 설치 도중 다음과 같은 설정을 해줘야 하는데, Asia, Seoul을 선택해 주면 됩니다. 그럼 설치가 완료됩니다. nginx 버전을 확인하며 설치가 잘 된 것을 확인할 수 있습니다. 그럼 현재까지 nginx가 설치된 ubuntu 컨테이너를 구성했습니다. 추가적으.. 2021. 6. 10.
[Docker] 기본 명령어 이번 포스팅에서는 Docker의 기본 명령어들에 대해 포스팅하려고 합니다. 가장 기본적인 명령어입니다. $ docker -- help 이 명령어로 docker에 있는 명령어들을 확인하고 배울 수 있습니다 $ docker run --help 이렇게 run이라는 명령어에 대한 정보들을 얻을 수 있습니다. $ docker ps Container의 목록을 확인할 수 있습니다. 기본적으로 이 명령어는 실행 중인 container만 보여줍니다. 현재 실행하고 있는 container는 없으므로 아무것도 뜨지 않습니다. 다음 명령어를 실행하면 현재까지 실행했던 container들에 대한 리스트를 확인할 수 있습니다. $ docker ps -a 이전에 한번 실행하고 바로 종료되었던 hello-world 컨테이너들을 확인.. 2021. 6. 10.
반응형