일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 코테
- 이것이자바다9장
- java
- 가운데를말해요
- 이것이자바다
- 백준온라인저지
- KT포트포워딩
- 합성곱연산
- 확인문제
- BOJ1655
- 스파르타코딩클럽
- 2019카카오코테
- 백준
- 이것이자바다확인문제
- 컴퓨터비전
- 백준평범한배낭
- BOJ
- 딥러닝
- 코드트리
- 백준가운데를말해요
- 백준스택
- 백준10828
- 웹개발기초
- 운영체제
- 카카오코테
- 윤곽선검출
- 백준9012
- 백준괄호
- 코딩테스트실력진단
- 냅색알고리즘
- Today
- Total
목록🐳 도커와 쿠버네티스 (7)
코딩하는 락커

Target 설정 3개의 애플리케이션 컨테이너로 구성됨 첫번째 컨테이너 - PHP 인터프리터 컨테이너 Laravel PHP 애플리케이션의 소스 코드가 포함된 폴더가 호스트 컴퓨터에 존재함 소스 코드 폴더는 PHP 인터프리터 컨테이너라는 하나의 컨테이너에 노출됨 이 컨테이너는 소스 코드에 접근할 수 있으며 내부에는 PHP가 설치되어 있음 (즉, 소스 코드를 해석하고 들어오는 요청에 대한 응답을 생성할 수 있음) 두번째 컨테이너 - Nginx 웹서버 컨테이너 Nginx 웹 서버가 들어가 있음 이 컨테이너와 웹 서버는 들어오는 요청을 받은 다음 PHP 인터프리터로 이동해서 PHP 인터프리터가 생성한 응답을 요청을 전송한 클라이언트에게 돌려줌 세번째 컨테이너 - MySQL 데이터베이스 MySQL 데이터베이스가 ..

모듈 소개 & "유틸리티 컨테이너"란 무엇인가? 유틸리티 컨테이너: 특정 환경만 포함하는 컨테이너를 의미함 유틸리티 컨테이너에서 환경을 시작할 때 애플리케이션을 시작하지 않음 대신 특정 작업을 실행하기 위해 지정한 명령과 함께 실행함 유틸리티 컨테이너: 왜 사용하는가? 많은 프로젝트와 많은 프로그래밍 언어는 프로젝트 초기 생성시 호스트 컴퓨터의 시스템에 설치할 부가적인 툴이 필요함 이 부분을 유틸리티 컨테이너가 도와줄 수 있음 컨테이너에서 명령을 실행하는 다양한 방법 빈 프로젝트 생성 후 터미널 입력 도커 허브의 공식 node 이미지 실행 $ docker run node 결과 즉시 중지됨 인터렉티브 모드에서 시작해야 하는 이미지이기 때문 인터렉티브 모드로 재시작 몇몇 기본 명령어 실행가능 중요한 점은 노..

Docker-Compose: 무엇이며 왜 사용하는가? Docker Compose란? 하나의 구성 파일을 사용하여 다수의 docker build와 다수의 docker run 명령을 대체할 수 있는 도구 모든 서비스, 모든 컨테이너를 즉시 시작하고 모든 필요한 이미지를 빌드할 수 있으며 모든 것을 중지할 수 있는 오케스트레이션 명령 셋 구성(Configuration) 파일을 사용하여 단 하나의 명령어로 전체 다중 컨테이너 애플리케이션을 제어할 수 있음 이미지나 컨테이너, 혹은 Docker File을 대체하는 것이 아님 다수의 호스트에서 다중 컨테이너를 관리하는데에는 적합하지 않음. (하나의 동일한 호스트에서 다중 컨테이너를 관리하는데 좋음) Docker Compose File 작성하기 멀티컨테이너 애플리케이..

Target 앱 & 설정 3가지 빌딩 블록과 컨디션 MongoDB Datebase MongoDB 컨테이너를 제거했다가 다시 생성해도 데이터가 손실되지 않아야 함 액세스를 제한할 수 있어야 함(공식 Mongo 이미지를 사용하여 컨테이너에서 생성된 데이터베이스에 사용자와 비밀번호를 추가) NodeJS REST API Backend Application 백엔드 컨테이너를 제거했다가 다시 생성해도 log 데이터가 손실되지 않아야 함 소스 코드 변경 사항이 즉시 반영되어야 함 React Frontend 소스 코드 변경 사항이 즉시 반영되어야 함 백엔드는 데이터를 저장하고 가져오기 위해 데이터베이스와 통신함 프론트엔드는 백엔드와 통신함 MongoDB 서비스 도커화 하기 MongoDB 컨테이너 실행 --name mo..

case 1: WWW 통신 컨테이너 애플리케이션이 포함된 컨테이너가 하나 있다고 가정 애플리케이션은 웹 API를 통해 다른 WWW 사이트와 통신할 수 있음 (ex. 위 그림과 같이 GET HTTP 요청을 some-api.com/ API에 보낼 수 있음) 즉, 컨테이너 내부의 도커화 된 앱은 컨테이너 외부의 웹사이트/웹페이지에 request를 전송할 수 있음 case 2: 컨테이너에서 로컬 호스트 머신으로의 통신 애플리케이션이 포함된 컨테이너는 호스트 컴퓨터에서 실행중인 특정 서비스와 통신할 수 있음 (ex. 위 그림과 같이 도커 없이 호스트 컴퓨터에서 돌아가고 있는 데이터베이스와 통신할 수 있음) 즉, 컨테이너 내부의 도커화 된 앱은 컨테이너 외부의 호스트 컴퓨터와 통신할 수 있음 case 3: 컨테이너..

데이터 카테고리 / 다양한 종류의 데이터 이해하기 데이터의 종류 애플리케이션 데이터 소스 코드 + 애플리케이션이 실행되는 환경 개발자에 의해 작성된 데이터 이미지를 빌드할 때 코드가 이미지에 복사됨 컨테이너를 실행할 때 제공된 환경에서 코드를 사용함 이미지가 빌드되면 변경할 수 없으므로 코드가 변경되면 새 이미지를 빌드해야 함 read-only data 임시 애플리케이션 데이터 애플리케이션이 실행되는 동안 생성된 데이터 ex) 서버에서 실행 중인 컨테이너로 넘어온 사용자의 데이터(사용자가 입력폼에 입력한 데이터) 로컬 파일 시스템, 이미지에 저장되지 않는 데이터 코드의 변수에 저장할 수 있음 메모리에만 저장하거나 DB에 저장할 수도 있음 컨테이너에 저장됨 즉, 이미지 위에 도커에 의해 추가된 레이어에 저..

이미지 & 컨테이너: 무엇이며, 왜 사용하는가? 도커의 2가지 기초 개념 컨테이너 애플리케이션, 웹사이트, 노드 서버, 애플리케이션을 실행하는 전체 환경 등을 포함하는 작은 패키지 소프트웨어 실행 유닛이 존재하여 그 유닛이 실행됨 이미지의 구체적인 실행 인스턴스, 즉 실행 애플리케이션이 됨 이미지 템플릿, 컨테이너의 청사진 모든 설정 명령과 모든 코드가 포함된 공유 가능한 패키지 이미지를 사용하여 이를 기반으로 한 여러 컨테이너를 만들 수 있음 이미지와 컨테이너의 관계 컨테이너에 설치된 이미지는 컴퓨터에서 실행되는 것이 아니라 컨테이너 내부에 설치되고 실행됨 이미지는 run 명령어를 사용하여 이미지의 인스턴스를 만들고, 이 이미지를 기반으로 하는 구체적인 컨테이너를 생성함 즉 컨테이너는 이미지의 인스턴스..