전체 글 794

FastAPI를 이용한 docker-compose API 개발 3편

프로젝트 글 모음 1편: https://malwareanalysis.tistory.com/137 2편: https://malwareanalysis.tistory.com/138 3편: https://malwareanalysis.tistory.com/139 3편에서 다루는 내용 2편에서 만들었던 fastapi 프로젝트를 도커 컨테이너로 배포하는 과정을 설명합니다. 영상으로도 만나볼 수 있습니다. https://youtu.be/g85_Mf9bL0Y 1. 선수지식 도커와 dockerfile을 다루는 방법을 알고 계셔야합니다. 이 글에서는 도커 명령어, dockerfile을 만드는 방법을 다루지 않습니다. 2. dockerfile 생성 fastapi 공식문서에서 제공하는 템플릿을 참조하여 dockerfile을 생..

FastAPI를 이용한 docker-compose API 개발 2편

프로젝트 글 모음 1편: https://malwareanalysis.tistory.com/137 2편: https://malwareanalysis.tistory.com/138 3편: https://malwareanalysis.tistory.com/139 2편에서 다루는 내용 FastAPI개발을 위한 환경설정과 helloworld API를 만드는 과정을 다룹니다. 영상으로도 만나볼 수 있습니다. https://youtu.be/JT6d7mApNEE 1. 준비 Fastapi을 실행하기 위해 파이썬 3.6이상이 필요합니다. 개발 IDE는 vscode를 사용합니다. 파이썬 패키지관리는 virtualenv로 관리합니다. 파이썬 3.6이상 파이썬 가상환경(virtualenv) vscode 2. 프로젝트 구조 [그림1..

FastAPI를 이용한 docker-compose API 개발 1편

프로젝트 글 모음 1편: https://malwareanalysis.tistory.com/137 2편: https://malwareanalysis.tistory.com/138 3편: https://malwareanalysis.tistory.com/139 1편에서 다루는 내용 1편에서는 왜 이 프로젝트를 시작했는지, 어떤 것을 개발했는지 등 프로젝트 소개를 합니다. 영상으로도 만나볼 수 있습니다. https://youtu.be/o1Oq6Mhw-VM 1. 개발 이유 docker 명령어를 외부에서 수행하기 위해서 이 프로젝트를 시작했습니다. 개발한 프로젝트 목록을 도커로 띄우기 위에서는 무조건 서버 원격 쉘에 붙었어야 했습니다. 도커 포트를 오픈해서 다이렉트로 접근할 수 있지만 보안문제(ip와 포트만 알면 d..

쿠버네티스에서 권한이 제한된 개발자 계정 발급 3편

이 챕터는 권한이 제한된 쿠버네티스 계정(serviceaccount)을 생성하는 방법을 다룹니다. 이전 챕터 1편: https://malwareanalysis.tistory.com/133 2편: https://malwareanalysis.tistory.com/135 3편: https://malwareanalysis.tistory.com/136 3편에서 다루는 내용 2편에서 만든 context를 사용하는 방법과 serviceaccount에 권한을 제한하는 방법을 설명합니다. context 전환 context전환은 kubectl config use context로 쉽게 할 수 있습니다. context이름만 설정하면 되는데요!. context이름은 current-context로 확인해야 합니다. kubectl..

쿠버네티스에서 권한이 제한된 개발자 계정 발급 2편

이 챕터는 권한이 제한된 쿠버네티스 계정(serviceaccount)을 생성하는 방법을 다룹니다. 이전 챕터 1편: https://malwareanalysis.tistory.com/133 2편: https://malwareanalysis.tistory.com/135 영상 https://youtu.be/qt4fMcvG564 2편에서 다루는 내용 2편에서는 serviceaccount를 이용한 쿠버네티스 인증과정을 다룹니다. serviceaccont를 생성하고 쿠버네티스 context에 등록하는 방법을 설명합니다. serviceaccount 생성 serviceaccount생성 방법은 간단합니다. 계정 이름과 namespace를 지정해주면 됩니다. 아래 예제는 default namespace에 developer..

윈도우에서 도커 설치

이 글은 윈도우에서 도커를 실행하는 방법을 설명합니다. 윈도우 10에서만 실습을 진행할 수 있습니다. 1. 영상 https://youtu.be/sPaJnpEbNSg 2. 윈도우에서 도커를 실행하는 원리 도커를 실행하기 위해서 리눅스 운영체제가 필요합니다. 그러므로 윈도우에서는 바로 도커를 실행할 수 없는데요. WSL과 docker-desktop을 이용해서 도커를 실행할 수 있습니다. 3. Hyper-v 설치 WSL은 가상화 레이어(Hyer-v)를 사용합니다. 그러므로 제어판 > 프로그램 추가/제거에서 Hyper-V를 설치해야 합니다. WSL은 가상화 레이어(Hyer-v)를 사용합니다. 그러므로 제어판 > 프로그램 추가/제거에서 Hyper-V를 설치해야 합니다 4. WSL 설치 wsl은 공식문서를 참고하면..

쿠버네티스에서 권한이 제한된 개발자 계정 발급 1편

1편: https://malwareanalysis.tistory.com/133 2편: https://malwareanalysis.tistory.com/135 이 챕터는 권한이 제한된 쿠버네티스 계정(serviceaccount)을 생성하는 방법을 다룹니다. https://youtu.be/qt4fMcvG564 1. 1편에서 다루는 내용 1편에서는 개발자 계정을 발급하기 전 필요한 사전지식인 쿠버네티스 context에 대해 설명합니다. 2. 들어가며 쿠버네티스에 접근할 수 있는 계정을 별도로 만들어야 할 때가 있는데요. 예로 개발팀을 위한 쿠버네티스 계정을 만들어야 할 때가 있습니다. 그리고 권한을 제한해야 하겠죠. 쿠버네티스 계정을 발급하고 권한을 제한하는 방법이 serviceaccount와 role입니다...

kubespray로 쿠버네티스 설치

목차 안녕하세요. 이번 글은 on-premise환경에서 kubespray로 쿠버네티스를 설치하는 과정을 다룹니다. https://youtu.be/12vNy4IvF14 1. 인프라 구성 virtualbox로 인프라를 구성해보겠습니다. vagrant로 쉽게 인프라를 자동으로 구축할 수 있습니다. vagrantfile은 github에서 다운로드 하실 수 있습니다. github: https://github.com/choisungwook-vagrant/kubespray-onpremise 1.1 VM 구성 vagrant는 총 6개의 서버를 생성합니다. 각 서버는 ubuntu18.04 운영체제를 사용합니다. bootstrap(kubespray 컨트롤러 서버) 쿠버네티스 클러스터 노드: controlplane3대, w..

github action과 heroku를 이용한 스프링부트 자동화 빌드/배포

목차 안녕하세요. 이 글은 githbub action과 heroku를 이용해서 스프링부트 애플리케이션을 무료로 배포하는 과정을 설명합니다. 실습이 막히신 분들은 영상을 참고하시면 좋을 것같습니다. https://youtu.be/YMdwYPCyxRk 1. Heroku란? 무료로 스프링부트 애플리케이션을 배포할 수 있는데요. 바로! heroku를 이용하는 것입니다. heroku는 2021년 6월 기준 5개까지 무료로 애플리케이션을 배포합니다. heroku공식 홈페이지를 참고하면 dynos리눅스 컨테이너 런타임을 이용해서 사용자 애플리케이션을 실행한다고 설명합니다. heroku의 특징 중 한개는 github과 연동이 되며 소스코드 빌드/애플리케이션 배포까지 수행합니다. 공식홈페이지에서는 buildpack 번들..

네트워크 part1 - Region과 AZ

목차 네트워크 파트 첫 번째 시간에는 Region과 AZ(Availability Zones)를 다룹니다. https://youtu.be/DJi0boz0e2U 1. 우리가 생성한 서비스는 어디에 존재할까? 저희가 생성요청한 서비스는 AWS 글로벌 인프라에서 생성됩니다. AWS 글로벌 인프라란 AWS가 전세계에 구축한 서버, 네트워크 등의 인프라를 의미합니다. AWS 글로벌 인프라는 Region이라는 용어가 있는데요. AWS 데이터센터가 물리적으로 위치한 지역을 의미합니다. 예로 한국의 서울, 일본의 도쿄, 미국의 샌프라시스코 등이 있습니다. 아직 한국에는 서울밖에 데이터센터가 없습니다. 한국에는 서울에 데이터센터가 있고 총 4곳에 위치해있습니다. Region에 위치한 데이터센터 세부지역을 AZ(Availa..