본문 바로가기

Docker9

컨테이너(Container) 너 좀 멋있다? 작년에 데엔/데옵 스터디를 하면서 인프라에 대해서 많이 공부했다. 그런데... 사람의 기억력이란.. 실습했던 자료는 남아있어서 괜찮은데 개념은 가물가물.. 작년에 깃허브 TIL, 블로그, 노션 여기저기 정리해서 찾아보기도 헷갈렸당 다시 공부해 보자! 출발~ 1. Virtualization (가상화) 넓은 의미: 컴퓨터 리소스(CPU, MEM 등)의 추상화 좁은 의미: 단일 컴퓨터의 리소스를 가상 머신(VM)이라고 하는 다수의 가상 컴퓨터로 분할하는 것 장점 리소스 효율성: 새로운 서비스를 위해 서버를 구매하지 않아도 된다. VM을 위한 컴퓨터는 필요. 관리 편의성: Infrastructure as Code(Iac), 자동화 가동 중단 시간 최소화: VM을 여러 개 두어, High Availability를.. 2023. 3. 3.
[StudyJam][#1] Docker 소개 본 포스팅은 구글 스터디 잼에 참가하여 유료 플랫폼인 '퀵랩'을 무료로 제공받아 학습한 내용을 정리한 글입니다. Docker 컨테이너는 Kubernetes에서 직접 사용할 수 있으므로 Kubernetes Engine에서 쉽게 실행할 수 있다. 📚 오늘 공부할 내용 Docker 컨테이너를 빌드, 실행 및 디버그하는 방법. Docker Hub 및 Google Container Registry에서 Docker 이미지를 가져오는 방법. Docker 이미지를 Google Container Registry에 푸시하는 방법. 🐾 여기서 간단하게 설명하자면 (말하다보니 전혀 안간단함) Docker Hub와 Google Container Registry 모두 Docker image를 저장하는 저장소이다. 이 둘의 차이는.. 2022. 7. 20.
[StudyJam][#0] '클라우드 스터디 잼 쿠버네티스 입문' 시작! 0. 개요 엘리스 1차 프로젝트 이후에 데브옵스 스터디를 하며 인프라에 대한 관심이 많아졌다. 그래서 쿠버네티스도 혼자 공부했지만 아직 이해가 부족해서 깊이 있게 공부하고 싶었다. 그러던 중 2022 Google Cloud Study Jam Kubernetes 입문반 수업을 알게 되었고 해당 내용을 공부하면서 내용을 보충하고 실습하면서 포스팅할 예정이다. 구글 클라우드 스터디 잼에 참여하면 유료 플랫폼 퀵랩을 무료로 제공받을 수 있다! 수강할 강의는 다음 강의이다. (공부하고 실습해서 포스팅 후 링크를 추가하겠다.) 📌 [Qwiklabs] Kubernetes in the Google Cloud [StudyJam][#1] Docker 소개 [StudyJam][#2]Kubernetes Engine: Qwik.. 2022. 7. 20.
[Docker] TypeScript + Node, Dockerfile 작성 및 build 우선 Docker Container를 run 하기 위해서는 Docker Image가 필요하다. Docker Image를 생성하는 방법은 두 가지가 있다. container를 대상으로 commit 명령어 실행 Dockerfile을 작성해서 build 명령어 실행 이때 나는 이미 사용하고 있는 container가 없기 때문에 Dockerfile을 이용해서 Image를 build 했다. 1. Image (이미지) ✔️ 도커 이미지는 컨테이너 실행에 필요한 파일과 설정값 등을 포함하고 있는 것이다. 다음과 같은 이미지 파일을 만들기 위해서 Dockerfile을 작성해보자. 2. Dockerfile FROM : 어떤 리눅스를 사용할 것인지에 대한 것 COPY : 파일 복사 현재 디렉토리 밑에 /app에 복사 (/.. 2022. 6. 25.
[CI/CD][#0] Docker, K8s, CI/CD 활용해 무중단 배포하기 - Intro 0. 개요 👉 GitHub Repo 확인하기 지난 3주간 2차 웹서비스 프로젝트를 진행했다. 이때, 1차 프로젝트 이후 학습한 Docker를 사용하여 배포를 진행했다. 확실히 1차 때 배포보다 좀 더 편리해졌다. 하지만 여기서 멈추면 안돼! 여전히 불편한 점이 있다. 자동화! Docker를 사용하여 좀 더 배포 과정이 쉬워지기는 했지만 프로젝트 중간중간 소스코드가 업데이트 되면 내가 다시 수동으로 image를 새로 빌드하고 docker hub에 push하고 업데이트된 버전으로 다시 docker-compose를 띄웠다. 새로운 컨테이너를 올리기 위해 배포 과정을 중단해야했고 이 과정에서 나는 중단하지 않고 자동으로 release할 방법이 필요했다. 또한, 여러 명의 개발자가 작업을 집중해서 하다보면 많은 .. 2022. 5. 14.
[#4] GCP GKE에서 Kubernetes로 컨테이너 관리하기 2탄 지난 실습에서 Container Registry에 이미지를 push 했다. Container Registry에 저장함으로써 Docker Hub와 같은 Public Registry가 아닌 Private Registry를 구축해 보았다. 이제 GKE로 본격 실습을 시작하자 1. 클러스터 생성 우선 클러스터를 생성하자. GKE에서 만든 클러스터로 컨테이너화된 웹 애플리케이션을 배포하고 관리할 수 있다. 지난 GKE 시작하기 포스팅에서는 console을 이용했지만 CLI를 사용하는 방법도 실습해보겠다. ( 해당 실습은 로컬에서 GCP를 사용하고 있으므로 로컬 사용을 위해서는 SDK를 설치하고 로그인하여 권한을 부여해야 한다.) 📑 지난 포스팅 [GCP] GKE에서 Kubernetes 시작하기 1) 옵션 설정 g.. 2022. 4. 18.
[#3] GCP GKE에서 Kubernetes로 컨테이너 관리하기 1탄 현재 K8s를 실습하는 나는 이전에 진행했던 프로젝트를 이미지로 build하여 docker-hub에 push하였고, docker compose로 배포까지 진행했다. 이제 배포된 시스템을 관리하는 컨테이너 오케스트레이션에 대해서 공부하려 한다. 이전에는 AWS EC2를 사용했지만 쿠버네티스 실습은 글로벌 클라우드 중 GCP를 사용한다. 1. Docker 이미지 빌드 우선 지난 실습을 통해 Dockerfile은 구성되어 있다. 오늘은 우선 node-app 부터 실습해보겠다. 1) Dockerfile 작성 2) Image Build * GCP 프로젝트 아이디는 환경변수화 해서 사용할 수 있다. export PROJECT_ID="GCP 프로젝트 아이디" 프로젝트 아이디는 GCP console에서 확인할 수 있다.. 2022. 4. 16.
[#2] AWS EC2, Docker Compose를 이용한 프로젝트 배포 Docker Compose를 이용하여 EC2환경에서 배포해볼 것이다. 해당 실습은 프로젝트 생성, Dockerfile, docker-compose.yml, docker hub push, 리눅스 환경 접속 모두 완료되었음을 가정하에 진행한다. 1. EC2 인스턴스 생성 및 리눅스 머신 접속 https://github.com/ParkJungYoon/TIL-Data_Study/blob/main/Cloud/AWS_3.md GitHub - ParkJungYoon/TIL-Data_Study: ✍ 데이터분석, 데이터베이스, 클라우드 컴퓨팅 등을 공부하고 기록 ✍ 데이터분석, 데이터베이스, 클라우드 컴퓨팅 등을 공부하고 기록하는 저장소 입니다. Contribute to ParkJungYoon/TIL-Data_Study.. 2022. 4. 14.
[#1] Docker, Docker compose를 이용한 개발 환경 구축 0. 개요 포트폴리오 공유 웹사이트 프로젝트를 진행했다. 프론트의 react-app과 백엔드의 nodejs-app으로 나누어 작업을 했다. 당시 프로젝트를 배포를 할 때에는 VM을 활용해서 배포를 진행했지만 프로젝트가 끝난 후 '데이터 엔지니어링/데브옵스' 스터디에서 클라우드 / AWS / Docker / Docker compose / Kubernetes 까지 학습을 진행하였고 나는 배운 내용을 직접 진행했던 프로젝트에 적용해봄으로써 공부한 내용을 실습해볼 예정이다. 해당 포스팅은 기본적인 개념 공부를 마친 후 실습을 기록하는 포스팅이므로 기본 개념은 숙지된 가정하에 기록한다. 1. Docker 개념 Docker에 대한 개념은 나의 깃허브에도 정리되어 있으며 블로그 또는 Docker Docs를 통해 학습.. 2022. 4. 14.
반응형