EvanJin Blog

seongjoojin
Written by@seongjoojin
Lives and works in Seoul building useful things.

GitHubTwitter

k8s wordpress

k8s wordpress os: mac os kubernetes version: 1.17 0. kubectl, minikube 설치 1. secret 생성 2. volume 만들기 3. mysql pod 실행 4. 워드프레스 앱 실행 위에 나오는 url로 접속하여 워드프레스 설치화면이 나온다면 정상적으로 동작한 것입니다.

TIL-2020.01.20

TIL-2020.01.20 kubectl 기능: 쿠버네티스 자원들의 생성, 업데이트, 삭제, 디버그, 모니터링, 트러블슈팅, 클러스터 관리 cheat sheet: https://kubernetes.io/ko/docs/reference/kubectl/cheatsheet/ command: 자원에 실행하려는 동작 TYPE: 자원 타입 NAME: 자원 이름 FL…

TIL-2020.01.16

TIL-2020.01.16 kubeadm kubeadm : 클러스터 생성/관리 도구 etcd (스택 etcd) : 쿠버네티스 클러스터의 데이터 저장소 역할. kubespray kubespray : 상용 서비스에 적합한 보안성과 고가용성이 있는 쿠버네티스 클러스터를 배포하는 오픈 소스 프로젝트. 구글 클라우드 영역 왠지 모르겠지만 각 영역별로 vm을 4개로…

Javascript Event Loop

0. Stack과 Queue 먼저 Event Loop를 살펴보기 전에 두 가지의 자료구조를 알고 가야합니다. Stack과 Queue인데요. 0-1. Stack stack.svg Stack은 마지막에 저장된 데이터를 가장 먼저 출력하는 데이터 구조입니다. 0-2. Queue queue.svg Queue는 줄서기와 동일하게 가장 먼저 입력된 데이터가 가장 먼…

자바스크립트 객체지향

객체지향 객체지향은 크고 견고한 프로그래밍을 만들기 위한 노력의 산물 객체지향이라는 큰 흐름은 현대적 프로그래밍 언어들을 지배하고 있는 가장 중요한 맥락이라고 말할 수 있음 1. 객체지향 프로그래밍 1-1. 객체 지향 프로그래밍 객체지향 프로그래밍(Object-Oriented Programming)은 좀 더 나은 프로그램으로 만들기위한 프로그래밍 패러다임…

자바스크립트 함수지향

0. 함수지향 이번에는 자바스크립트의 함수지향 부분을 정리해보려고 합니다. 자바스크립트의 핵심적인 도구는 함수입니다. 자바스크립트의 함수는 매우 강력합니다. 함수에 대한 이해 없이는 자바스크립트를 잘 다루기 어렵다고 합니다. 또한 자바스크립트에서 함수는 객체를 이해하는데 가장 중요한 기초를 이룹니다. 1. 유효범위 유효범위(Scope)는 변수의 수명을 의…

간밤에 추하다는 것을 몰랐다

간밤에 추하다는 것을 몰랐다 피곤에 지쳐 침대에 누우면 귀뚜라미 한 마리가 귀뜨르 귀뜨르 귀뜨르르 우렁차게 운다 둘 다 절실하게 울었다 “나 좀 추한거 같죠” 피곤에 지쳐간 것이 잘못이었다 귀뚜라미와 나의 간절함은 평범했다 간밤에 추하다는 것을 몰랐다

자바스크립트 기본

0. 들어가는 말 평소의 자바스크립트를 공부하자하다가 조금 미뤄둔 면도 있는거 같고 다시 한번 상기 하기 위해서 이고잉님의 javascript 강의(https://opentutorials.org/course/743)를 듣고 정리해보려고 합니다. 먼저 자바스크립트 기본을 보고 정리하려고 합니다. 1. 숫자와 문자 자바스크립트에서 큰 따옴표나 작은 따옴표가 …

2019 회고

들어가는 글       거울 속 제 얼굴에 위악의 침을 뱉고서 크게 웃었을 때 자랑처럼 산발을 하고 그녀를 앞질러 뛰어갔을 때 분노에 북받쳐 아버지 멱살을 잡았다가 공포에 떨며 바로 놓았을 때 강건너 모르는 사람들 뚫어지게 노려보며 숱한 결심들을 남발했을 때 한 귀로 듣고 한귀로 흘리는 것을 즐겨 제발 욕해달라고 친구에게 빌었을 때 가장 자신 있는 정신의…

Azure Kubernetes Service에 Node app 배포해보기

1. Azure Kubernetes Service(AKS) 란 완전 관리형 서비스로써 컨테이너화된 어플리케이션의 배포와 관리를 더욱 용이하게 해주는 서비스입니다. AKS는 여러 사례를 친절하게 안내해주고 있습니다. 그 중에서도 저는 로 진행해보려고 합니다. https://azure.microsoft.com/ko-kr/solutions/architectur…

AWS Certificate Manager를 이용한 HTTPS

0. 도메인 구입 먼저 도메인을 구입하셔야 합니다. 제가 아는 한도내로 나열하자면 아래와 같습니다. 메가존 가비아 후이즈 GoDaddy AWS Router53 NameCheap name.com : 깃허브 학생 팩에서 도메인 하나를 무료로 증정해줍니다. 1. 인증서 등록 AWS Certificate Manager에서 위에서 구매한 도메인 연결하여 사용해보려…

GCP kubernetes engine에 Node App 배포해보기

0. Intro 이번 포스팅은 heroku로 배포한 애플리케이션을 GCP kubernetes engine으로 마이그레이션한 삽질기를 공유해보려고 합니다. 먼저 제가 만든 유튜브 클론을 heroku에 배포해놓은 상태였습니다. 요즘에 쿠버네티스를 공부했지만 실제 프로덕트에 올려서 해본 적은 없는거 같아서 해당 클론을 한 번 kubernetes에 올려서 실제 …

k8s 기초

본 내용은 eks workshop의 내용을 정리한 것입니다. k8s node 쿠버네티스 클러스터를 구성하는 머신들 마스터 노드(Master-node) : Control Plane을 형성하고 클러스터의 두뇌 역할 워커 노드(Worker-node) : Data Plane을 형성하고 파드(pod)를 통해 실제 컨테이너 이미지를 작동 시팀 k8s 오브젝트 쿠버네…

kubernetes virtualbox를 이용하여 설치(mac)

0. 구성 본 포스팅에서는 마스터노드 한 개와 워커노드 두 개로 구성되도록 실습해보려고 합니다. 1. Virtualbox 설치 homebrew를 이용하여서 virtualbox를 설치해보도록 하겠습니다. 2. Ubuntu ISO 파일 다운로드 공식홈페이지도 있지만 보통 느린 관계로 부경대에서 제공하는 image를 다운 받도록 하겠습니다. http://cdi…

kubernetes 개념 정리

Pods Pods는 Kubernetes 내부에서 컨테이너를 운영하는 기본 단위 Pod는 환경 변수를 설정하고, 스토리지를 마운트(mount)하고, 기타 정보를 컨테이너에 피드(feet)하는 방법을 제공 Kubernetes에서 Pods는 컨테이너의 작동을 담당 모든 Pod는 하나 이상의 컨테이너를 보유하고 해당 컨테이너의 실행을 제어 컨테이너의 수명이 다…

절망 드리븐 성장 발표를 듣고 느낀점

언제 ‘한 단계 성장 했다’라고 말할 수 있을까요? 발표자님께서 먼저 꺼낸 주제였다. 한 단계 성장? 개발자한테 성장이란 무엇일까? 이전보다 빠르게 개발? 같은 실수를 반복하지 않을때? 질문에 답을 많이 할 수 있을 때? 프로젝트를 많이하면? 나는 사실 처음 jQuery로 퍼블리셔 하던 시절에는 이전보다 빠르게 개발하면 장땡이라고 생각해왔고 프론트엔드 개…

도구 설치(kubernetes task)

0. Intro 본 블로그글은 k8s task들을 따라하면서 정리한 글입니다. 실습해보고 정리를 안 하면 잊어버려서 잊어버리지 않도록 정리해봅니다. 참고로 저는 mac을 사용하고 있어서 모든 실습 정리는 mac이 기준입니다. 1. kubectl 설치 맥에는 homebrew라는 편리한 패키지 매니저가 있습니다. 저는 homebrew를 통해서 설치하도록 하겠…

추천 크롬 확장프로그램 및 추천 맥 프로그램

추천 크롬 확장프로그램 TrafficLight TrafficLight는 백신을 만들어내는 업체인 Bitdefender에서 만든 크롬 확장프로그램입니다. 저는 주로 검색 후 안전한 사이트인지 확인하는 용도로 거의 쓰고 있습니다. The Great Suspender The Great Suspender는 크롬 탭을 관리해주는 확장프로그램입니다. 크롬이 램을 …

내가 사용하는 Visual Studio Code 확장프로그램 및 추천 코딩 폰트

Visual Studio Code 추천 확장프로그램 Vue Development Extension Pack 처음 프론트 입문을 vue로 시작해서 IDE를 atom에서 vscode로 넘어오고 vue에 관한 확장프로그램을 찾다가 위의 것을 찾게되었고 지금도 잘 사용하고 있습니다. 일단 위에 확장프로그램에서 vue에 관련된 것만 살펴보면 아래와 같습니다. Ve…

gatsby-starter-bee로 변경한 이야기

gatsby-starter-bee로 넘어간 이유 원래는 기본 gatsby 블로그 테마를 사용하였고 그것도 나쁘지 않았지만 좀 더 이쁘게 꾸밀 방법을 고민하다가 다크모드를 너무 좋아하다 보니 어떻게 하는지 찾다가 그 이후 일에 치이면서 잊어버리고 잠시 방치하게 되었습니다. 잠시라기엔 좀 긴거 같긴하지만요.. 오랜만에 지인이랑 이야기 하는 중 자기 블로그 쓰…

javascript 배열 내장함수 알아보기

1. forEach 는 for를 대체할 수 있는 내장함수입니다. 위의 console은 아래와 같이 출력되게 됩니다. forEach의 매개변수에는 현재 요소뿐만 아니라 index, array(호출한 배열)도 있습니다. 위의 console은 아래와 같이 출력되게 됩니다. 2. map 배열 안의 원소를 변환 할 때 사용되고 새로운 배열을 만듭니다. 위의 c…

fishshell 사용기

0. 왜 fishshell을 사용하였는가 먼저 맥에서 많이들 쓰고 계시는 zsh를 왜 버리고 fish를 사용하게 된 이유에 대해서 먼저 풀어보려고합니다. 당연하겠지만 저도 처음부터 zsh를 안 쓴건 아닙니다. 주변 mac os를 쓰시는 분들이 거의 대부분 zsh를 사용하기에 저도 설치 후 사용하였습니다. 하지만 저의 맥북에서는 zsh까지는 정상적으로 설치…

n으로 node버전 관리하기

1. n 설차하기 node.js를 사용하는 개발자면 (프론트엔드 개발자나 node.js를 사용하는 개발자 등) node.js의 버전관리에서 힘들때가 많습니다. 오늘은 node.js의 버전관리 중 n이라는 것을 설치하고 사용하는 방법을 적어보려고 합니다. 설치 방법에는 세가지의 방식이 있습니다. 먼저 npm이나 yarn을 통해서 gloabl로 설치하는 방법…

Vue 개발 시 참고사항

0. app의 특징에 따른 Vue 플러그인 조합 Vue Router와 Vuex 모두 사용할 필요 없는 app의 예 기존 전자상거래 사이트처럼 라우팅은 서버 사이드에서 수행하고 클라이언트 사이드도 컴포넌트로 구성되지않는 app 서비스 소개 사이트 등 일부 컴포넌트가 동적으로 동작하는 랜딩페이지 Vue Router만 적용하면 되는 app의 예 SPA 기반 관…

AWS Lambda에 golang 배포하기 (feat.serverless framework,gin)

해당 예제는 Serverless Framework을 사용하여서 aws lambda에 배포합니다. 0. Golang 설치 Mac, Linux Go페이지에서 tar.gz파일을 다운받아서 에 압축을 풉니다. 압축을 풀고 난 후에 에 PATH를 설정합니다. vi, nano 등으로 해당파일을 불러오고 아래 내용을 추가합니다. Windows Go페이지에서 윈도우에 …

Nuxt Cypress 적용기

0. cypress란 https://www.cypress.io cypress는 end to end test framework입니다 end to end test란 사용자 입장에서 테스트하는 것을 말합니다. 좀 더 자세한 것은 아래의 글을 읽어보시면 좋을거 같아서 링크 공유드립니다. https://medium.com/hbsmith/e2e-test-알아보기-3…

Nuxt Sentry 도입기

0. Sentry은 무엇인가 https://sentry.io/welcome/ sentry의 홈페이지를 보시면 아시겠지만 에러를 추적해주는 소프트웨어 입니다. 이게 왜 필요한가에 대해서는 애플리케이션을 만들고 출시하고 운영하다보면 애플리케이션을 사용하는 사용자가 에러난다고 피드백을 줄 때가 있다. 이런 피드백을 받을때 난감한 점은 유저가 어느때에 정확히 어…

Nuxt PWA 적용기

0. PWA란 PWA는 구글에서 밀고 있는 웹기술로 progress web app의 역자입니다. 대표적인 기능으로는 푸시 알람, 오프라인 지원, 앱 같이 설치 된다는 점입니다. 일단 저는 푸시 알람과 오프라인 지원은 완벽하게 지원되는 단계가 아닌 어떻게 도입할 수 있는지에 대해서 서술해보려고 합니다. 나중에 둘 다 도입 및 해결하게 되면 추가적으로 글을 …

Nuxt docker image로 만들기

이번에는 nuxt를 도커 이미지를 만들어서 다음 프로젝트에서 사용하는 기본 뼈대가 되거나 aws 등의 클라우드에 도커 이미지를 올리는 등에 쓰일 수 있도록 이미지를 만들어 보도록 하겠습니다. 일단은 저는 초기 설치 후 이것을 이미지로 만들어서 다음 프로젝트에도 사용되는 기본 뼈대가 되도록 이미지를 떠보도록 하겠습니다. 0. Docker 설치 https:/…

AWS Lambda에 Nuxt 배포하기 (feat.Apex Up)

해당 예제는 Apex Up을 사용하여서 aws lambda에 배포합니다. 1. Nuxt.js 초기 설치 또는 npx 명령어는 npm 5.2.0 버전 이후부터 실행 가능합니다. 위 명령어로 nuxt.js를 설치시 server framework를 선택할 때 None(Nuxt default server)가 아닌 다른 것을 선택해야 lambda에 배포 가능합니다…