목록대학교/etc (21)
SW
1. 쿠버네티스 (Kubernetes) 쿠버네티스는 컨테이너를 관리하기 위한 툴이다. 만약 토커를 이용해서 (Nodejs 혹은 장고)웹사이트를 배포하려고 한다면, 즉, 그걸 도커 컨테이너 안에 넣어서 AWS로 보내고 싶다면 이 프로세스에서는 쿠버네티스를 알아야할 이유가 없다. 왜냐면 이때는 그냥 도커를 업로드하고 배포하는 것이 전부이기 때문이다. 알다시피 도커는 여러개의 컨테이너를 갖고 있을 때 쓰인다. 예를 들어 만약 MSA를 가지고 있다면, 그래서 어떤 컨테이너는 유저 업로드만 다루고, 어떤 컨테이너는 인증 만 다루고 어떤건 결제만 다룬다면 이 모든 컨테이너들은 동시에 업로드가 되어야 한다. 배포를 할 때는 그렇게 하면 되긴 하는데 많은 컨테이너를 갖고 있다면 문제가 생길 수 있다. 예를 들어, 컨테..
1. 도커(Docker) Docker는 컨테이너 기반의 오픈소스 가상화 플랫폼이다. Docker는 environment disparity 문제를 해결해준다. environment disparity가 무엇이냐? 예를 들어, 어제 저녁에 개발을 하고 있었고 서버에 올리기만 하면 되는 일이었다. 근데 올린게 작동을 잘 안했다. 그 이유는 내 컴퓨터는 윈도우고 서버는 리눅스 였기 때문이다. 이러한 것이 environment disparity이다. Docker가 그것을 해결해준다. 위 문제를 해결하기 위해 윈도우와 서버에 docker를 둘다 설치한다. 거기에 내가 설치하고 싶은 우분투, 파이썬, 깃 등등을 설치한다. 이 파일을 서버와 윈도우 둘에게 주고 Docker는 해당 설정 환경과 같은 버츄얼 컨테이너를 컴퓨..
MSA(Micro Service Architecture) 클라이언트 개발자보다는 서버 개발자가 더 관심을 가지는 내용 마이크로 서비스는 최근에 나온 아키텍쳐가 아니고 옛날부터 존재했던 아키텍쳐이다. 다만 최신 개발 트렌드로 많이 언급되는 주제이다. MSA가 절대적으로 좋은 것이 아니라 자신이 속해 있는 팀과 개발, 배포 방식에 맞는 아키텍쳐를 적용하는 것이 유리하다. MSA이전의 아키텍처라고 할 수 있는 가장 기본적인 형태의 아키텍처인 모놀리틱 아키텍처를 먼저 보겠다. 모놀리틱 아키텍처 모놀리틱 아키텍처는 최근 서비스 구성의 관점에서보면 단점이 있다. 쉽게 말하자면, 서버 한 대에 DB나 API를 둔 뒤에 서버 한대로 배포를 진행하는 방식이라고 볼 수 있다. 그렇기 때문에 예를 들면 서비스가 약간 크다고..
1. Error yarn과 npm으로 graphql을 중복 설치하여 생긴 문제 Error: Cannot use GraphQLSchema "[object GraphQLSchema]" from another module or realm. Ensure that there is only one instance of "graphql" in the node_modules directory. If different versions of "graphql" are the dependencies of other relied on modules, use "resolutions" to ensure only one version is installed. https://yarnpkg.com/en/docs/selective-ver..
1. npm error npm ERR! code ELIFECYCLE npm ERR! errno 1 npm ERR! gql-apollo-react@1.0.0 start: `nodemon src/index.js` npm ERR! Exit status 1 npm ERR! npm ERR! Failed at the gql-apollo-react@1.0.0 start script. npm ERR! This is probably not a problem with npm. There is likely additional logging output above. npm ERR! A complete log of this run can be found in: npm ERR! C:\Users\KFL202007_2\AppData..
1. Error Spread Operator인 ... 에서 Unexpected token 에러가 떴다. 2. Solution .babelrc 파일에 문제가 있었다. npm instal babel-preset-stage-3 실행 후 다음과 같이 "stage-3"을 추가 해결됨.
0. 네이버 API 사용 방법 1) 아래 url에서 API 키를 발급 받는다. https://developers.naver.com NAVER Developers 네이버 오픈 API들을 활용해 개발자들이 다양한 애플리케이션을 개발할 수 있도록 API 가이드와 SDK를 제공합니다. 제공중인 오픈 API에는 네이버 로그인, 검색, 단축URL, 캡차를 비롯 기계번역, 음성인식, 음성합성 등이 있습니다. developers.naver.com 2) Products -> 서비스 API -> 검색 3) API 키를 발급 받기 위해 오픈 API 이용 신청 버튼을 클릭한다. 4) 정보 입력 (비로그인 오픈 API 서비스 환경 -> WEB 설정) 5) Client ID / Client Server 발급 완료 1. 활용 예시..
0. 오류 react-native run-android를 실행했더니 다음과 같이 JAVA_HOME 오류가 떴다. zsh을 사용하고 있어서 JAVA_HOME을 vi ~/.zshrc 에서 설정하였다. 다음과 같이 설정이 되어있었지만 여전히 오류가 떴다. 1. 해결 현재 jdk13.0.1.jdk로 설정되어 있던 것을 8로 바꾸었더니 해결되었다. jdk8을 다음과 같이 설치하였다. 설치 후 vi ~/.zshrc 를 실행하여 JAVA_HOME을 다음과 같이 바꿔주었다. 다시 react-native run-android를 실행 이제 다음과 같은 에뮬레이터 화면을 볼 수 있다.
1. Eclipse Eclipse는 IDE(Integrated Development Environment)이다. Eclipse에서도 프로젝트 설정 -> 라이브러리 설정 -> 코드 작업 -> 컴파일이 가능해서 Maven같은 Build Tool이라고 생각할 수 있지만 그렇지 않다. Build Tool은 프로젝트 생성, 라이브러리 생성 등을 담당한다면 IDE는 더 많은 도구들을 결합해서 만든 더 큰 단위의 도구이다. 2. Maven Maven은 Build Tool의 한 종류이다. Eclipse같은 IDE와는 다르다. Build과정은 프로젝트 설정 -> 라이브러리 설정 -> 코드 작업 -> 컴파일 -> 테스트 -> 패키지 만들기 -> 배포 -> 레포팅 과 같이 이루어져있다. Maven은 위 빌드 과정 중 반복되..