본문 바로가기

Containerize/Docker - 따배도8

[Docker] 복잡한 어플을 실제 배포해보기 01. 섹션 설명실제로 애플리케이션을 구성할때는 프론트 부분만을 이용하는 것이 아닌 백엔드 서버도 필요하고 DB 등등 많은 것이 필요하다. 이번에는 이전보다는 더욱 더 복잡한 도커 환경을 구성하는 시간을 가져보자.01-1. 풀스택 어플리케이션 (multi-container application)이번에는 요청(Request)은 Nginx, 프론트는 react, 백엔드는 node.js로 구성된 멀티 컨테이너 어플리케이션 환경을 구성 해보자. 실제로 어플리케이션이 모두 구현된 화면은 다음과 같다.  입력창에 데이터를 입력하면 TODO 리스트처럼 입력이 되는 간단한 어플리케이션. 해당 데이터는 MySQL에 저장 후 바로 보여주는 방식으로 진행이 된다. 또한 컨테이너를 재 시작하여도 DB에 남아있는 데이터는 그대.. 2023. 4. 24.
[Docker] 간단한 어플을 실제 배포해보기 01. 섹션 설명 & Github에 소스 코드 올리기https://github.com/ym1085/docker-react-app-sample.git이번 시간에는 저번 시간에 진행하였던 react app을 Github에 올리는 작업을 진행 (기존에 벌써 올려 두었음) 깃헙에서 아이디가 없는 경우 아이디를 만들고 레포지토리를 생성 한다. 후에 우리가 이전에 작성한 프로젝트를 업로드 한다. 기본적인 업로드를 위한 Git 명령어# 저장소 초기화git init# 스테이징 상태로 변환git add .# 커밋 메시지 작성git commit -m "first commit"# 로컬과 원격 저장소 연결git remote add origin # 원격지 업로드git push origin master02. Travis CI 설.. 2023. 4. 24.
[Docker] 간단한 React APP 실제로 배포 해보기 01. 섹션 설명01-1. 해당 섹션 설명어플리케이션의 처음부터 배포까지 진행단일 컨테이너 어플리케이션 실습멀티 컨테이너 어플리케이션 실습02. 리액트 앱 설치하기02-1. 리액트 앱 설치를 위해 node 설치$ node -vv16.13.1node -v 명령어를 통해 node.js 설치 여부를 확인 한다.02-2. node 설치 후 리액트 설치 진행# install reactnpx create-react-app react-app02-3. react 설치 후 실행# run reactnpm run start02-4. react application 테스트# test reactnpm run test02-5. react application build# build react appnpm run build03. .. 2023. 4. 24.
[Docker] Docker Compose 01. Docker Compose란 무엇인가?Docker compose란 여러 개의 docker 컨테이너를 정의하고 한 번에 실행하는 툴이다.Kubernetes처럼 yaml 파일로 여러 개의 docker 내부 속성을 설정하고 한 번에 실행 시킨다. (마치 docker를 배치로 한 번에 실행시키는거라 생각하면 좋을 것 같다)01-1. Docker compose복수 개의 컨테이너를 실행시키는 도커 애플리케이션을 정의하기 위한 툴Compose를 사용하면 yaml 파일을 사용하여 애플리케이션의 서비스 구성이 가능01-2. 프로세스만들고자 하는 앱의 환경을 어디에서나 재사용하기 위해 Dockerfile 정의docker-compose.yml 에서 앱을 구성할 수 있는 서비스 정의docker-compose up 명령.. 2023. 4. 24.
[Docker] Docker 기반 Node.js 앱 만들기 01. 섹션 설명Node.js 공식 홈페이지에서 도커를 이용하여 Node.js를 이용하는 예시 부분을사용하여 도커를 실정에 도입하는 방법 정리Dockerizing a Node.js web appNode.js 앱은 정말 간단한 앱을 만들 것이다Node.js 보다는 Docker에 초점을 맞춰서 진행Dockerfile을 어떤식으로 작성하는지 조금 더 딥하게 들어간다02. Node.js 앱 만들기package.json프로젝트 정보프로젝트에서 사용중인 패키지의 의존성 관리server.js 파일 필요node.js 시작 시 가장 먼저 실행되는 파일02-1. package.json 파일 만들기npm initThis utility will walk you through creating a package.json file.. 2023. 4. 23.
[Docker] 직접 도커 이미지 만들기 01. 도커 이미지 생성 순서우리는 지금까지 도커 허브(Docker Hub)에 존재하는 이미지를 사용해 실습을 진행 하였다.이번 시간에는 도커 이미지를 직접 만들어보는 시간을 가져보자.01-1. 도커 이미지 생성하는 순서위 사진은 Docker Hub에 존재하는 Redis 이미지의 사진이다. 위와 같은 이미지를 만들기위한 순서는 다음과 같다.Docker File 작성Docker image를 만들기 위한 설정 파일컨테이너가 어떻게 행동해야 하는지에 대한 정의도커 클라이언트도커 파일에 입력된 것들이 도커 클라이언트에게 전달 되어야함도커 서버전달된 모든 것들의 작업을 수행하는 영역이미지 생성02. Dockerfile 만들기도커 이미지를 만들기 위한 설정 파일이며, 컨테이너가 어떻게 행도해야 하는지에 대한 정의0.. 2023. 4. 23.
[Docker] 기본적인 Docker Client 명령어 알아보기 01. 이미지로 컨테이너 만들기이번 시간에는 도커(Docker) 이미지가 어떻게 컨테이너로 만들어지는지 확인 해보자.중요한 부분은 이미지 안에는 실행 시 시작될 명령어와, 파일 스냅샷이 존재한다는 점.01-1. 이미지이미지는 응용 프로그램을 실행하는 데 필요한 모든 것을 포함하고 있다.01-2. 실제 실행을 위해 필요한 부분시작 시 실행이 될 명령어(run kakaotalk)파일 스냅샷(카카오톡 파일)01-3. 이미지를 컨테이너로 만드는 순서❯ docker run hello-world # run 명령어를 통해 image를 컨테이너화 시킴Hello from Docker!This message shows that your installation appears to be working correctly.To .. 2023. 4. 23.
[Docker] Docker 기본 개념 정리 01. 도커를 쓰는 이유?도커(Docker)는 리눅스의 응용 프로그램들을 소프트웨어 컨테이너 안에 배치시키는 일을 자동화하는 오픈 소스 프로젝트이다.Docker를 사용하는 이유는 어떠한 프로그램을 다운받는 과정을 굉장히 간단하게 만들기 위해 사용이 된다.우리는 어떠한 프로그램을 다운로드 받기 위해 인스톨러를 내려 받는다. 이 때, 갖고 있는 서버, 패키지 버전, 운영체제 등에 따라 프로그램 설치 과정에서 에러가 발생한다. 즉, 이러한 애플리케이션 환경에 따라 설치 방식이 달라지게 되고 각각의 환경에 맞는 설치 방법을 통해 우리는 설치를 진행해야 한다. 도커는.. 애플리케이션 환경에 구애 받지 않고 실행하는 기술 이다. 또한 애플리케이션 뿐만 아니라 애플리케이션을 실행하는데 필요한 모든 환경을 포함한다.0.. 2023. 4. 23.