Dockerfile에 필요한것은-어떤 OS쓸건지-어떤 프로그램 설치할지-어떤 터미널 명령어 실행할지-어떤 파일 집어넣을건지 내프로그램 구동하려면 어떤짓을 해야하는지 FROM 명령어 어떤 OS 환경에서 내 프로그램을 실행할지부터 정해야하는데 FROM으로 정의가 가능하다.그래서 Dockerfile은 항상 FROM 부터 시작한다.FROM 뒤에 어떤 OS를 설치해서 시작할건지 정하면 되는데그건 Docker hub에서 찾아올 수 있다./*1.Node.js 설치2. express 설치3. 코드작성4. 코드실행 서버 실행---> 귀찮으니까 밀키트로 만들고 실행하게끔 docker image를 만든다.*/ npm install express를 해야하는 차례인데 RUN 명령어사용하는 라이브러리를 하나하나 RUN 명령어로..
Load = 서버가 받는 부하 : 서버가 받는 트래픽을 의미 트래픽이 늘어났을때? 선택할 수 있는 방법이 2개가있다. 1.Vertical Scale up 우리가 가지고있는 서버자체의 퍼포먼스를 늘리는 방법예를 들면RAM이 4GB 였다면 그것을 32GB로 늘릴수도있고, 혹은 CPU가 옛날것이면, 더 좋은 CPU로 더 많은 코어를 가지고있는 CPU로 바꿀 수 가 있다. ----------------------------> 기술의 한계에 부딪히게 된다. 2.Horizontal Scale out ✅ 한대로 처리할 것을, 여러대로 처리를 하는 방식.분산시스템을 구축 이때 중요한게 바로 로드밸런싱!! 어떻게, 분산 시키는지 결정하는 그 모듈이. 이 똑똑이가 바로 로드 밸런서 이다. 로드밸런싱 방식?? 1...
vue.config.js는 vue내부에서 언제 실행되나요? vue-cli-service가 실행될 때 초기 단계에서 로드됩니다.vue-cli-service serve (개발 서버 실행) 또는 vue-cli-service build (빌드 실행) 시 vue.config.js를 읽어 Webpack 및 기타 툴의 설정을 동적으로 변경합니다.vue.config.js는 Vue 프레임워크의 런타임이 아니라 빌드 타임에서 실행되며, Webpack을 포함한 빌드 프로세스의 일부로 동작합니다.vue-cli-service란 무엇인가요 vue-cli-service는 Vue CLI(@vue/cli)에 의해 설치되는 패키지로, Vue 프로젝트를 실행, 빌드, 테스트, 배포하는 데 사용됩니다.Vue 프레임워크 자체(vue 패..
TODO : 에러코드 통일화, 상황에 알맞는 에러코드 사용하기, 심화: 백엔드에서 들어오는 에러 메시지를 바로 팝업창에 보여줘서 굳이 프론트에서 코드에따라서 처리하지않아도 좋을것같다. 1. /api/v1/user/self2 - getUserInfo: () => { return get(GATEWAY_URLS.SELF, ""); }, TMS 사용하는곳세션확인을위해 router에서 접근할때마다 확인하는 용도 -TEST1: 로그인 안되어있어서 로그인페이지로 가야하는 상황(로그인 상태확인)에러코드: 27001 - user 아이디를 가져올수없음, 세션이 아이디x 세션 만료 혹은 확인할 수 없음. 수정사항(메시지) : 사용자 ID를 가져오는 데 실패했습니다. /혹은/ 접근권한이 없습니다..
vue는 slot을 사용하여 할 수 있는 일이 많이 있는듯 싶다.자식컴포넌트에게 간단하게 무언가를 전달할수가있는데그때 사용하고 싶은 구간에서 slot태그를 사용해서 넣어본다. 부모컴포넌트가이김 이렇게 해줬을때, 자식 컴포넌트안에 제출 이렇게 사용했어도 버튼모양은 제출이 뜨는것이 아니고부모컴포넌트가이김 이 나온다.즉, 부모컴포넌트에서 무언가를 넘겨줬으면 대체컨텐츠보다 위에서 넘겨준것이 우세하다는 이야기다. 좀더 심화하여, 이름이 있는 슬롯을 공부해보자. 위와같은 모양의 구조를 만든다고 가정해보자,name이라는 특수속성을 사용한다고 할때 마치 ID처럼 SLOT에게 이름을 부여해줄 수 잇다. ..
watch사용시에 유의해야할 점.1. 값참조 const obj = reactive({ count: 0 })// 이것은 작동하지 않습니다. watch()에 숫자를 전달하고 있기 때문입니다.watch(obj.count, (count) => { console.log(`Count는: ${count}입니다`)})// getter를 사용해야한다.watch( () => obj.count, (count) => { console.log(`Count는: ${count}입니다`) }) 2. 깊은감시 state.someObject.nestedProperty = 'another value'; 로 바꿀시에는, 깊은감시로 참조를 할 수 있고, 얕은 감시에는 state.someObject = { nestedProper..
어플리케이션을 패키징 할 수 있는 tool 도커 :application, 그에필요한 system tools, 환경설정, dependencies를 하나로 묶어 = 컨테이너 (하나의 작은 소프트웨어 유닛)=>다른 서버, 다른 PC 그 어떤것에도 쉽게 배포하고, 안정적으로 구동할 수 있게 도와주는 tool 테크놀로지가 복잡해짐에 따라서, 우리 어플리케이션 구동에는 꽤 많은 것들이 필요하다node.js를 예로 들어보자, 우리의 소스파일(코드 친것) 만 서버에 배포하는것으로는우리의 어플리케이션을 구동하는데 문제점이 있다. nodejs, npm 여러 라이브러리를 사용한다면, 여러 dependencies, configs(환경설정) 하는 것이 모든 것들을 설정 해줘야한다. 서버마다, 개발자들의 pc마다 이런 모든것들..
템플릿에 너무 많은 논리를 넣으면안된다. export default { data() { return { author: { name: 'John Doe', books: [ 'Vue 2 - Advanced Guide', 'Vue 3 - Basic Guide', 'Vue 4 - The Mystery' ] } } }}책을 가지고 있다:{{ author.books.length > 0 ? 'Yes' : 'No' }} 위와 같은것은 좋은 예제가 아니다. 계산된 속성을 사용해야한다. export default { data() { return { author: { name:..
