일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |
- deploy
- html
- GAN
- SOLID
- CSS
- postgresql
- frontend
- Three
- backend
- Express
- CV
- figma
- PRISMA
- review
- Git
- vscode
- nodejs
- CS
- react
- PyTorch
- DB
- ps
- js
- ML
- python
- UI
- mongo
- ts
- API
- C++
- Today
- Total
목록Backend (43)
아카이브
.toml 파일 만들기fly.toml 파일은 Fly 앱의 배포 설정을 정의하는 파일로, Fly.io에 서버를 배포하기 위해서는 필수적으로 만들어야 합니다.아래 명령어를 통해 자동으로 .toml파일을 만들 수 있습니다.fly launch아래와 같이 서버 현황이 나오고, 설정을 변경할 것인지 묻게 됩니다. Y로 계속 진행하면, 새로운 브라우저 창이 뜨면서 배포 설정을 할 수 있는 fly.io 페이지가 나오게 됩니다.여기서는 지역만 nrt - Tokyo, Japan으로 바꾸었습니다.Confirm settings를 하면 브라우저 창을 닫고 터미널로 복귀할 수 있습니다.Dockerfile과 .dockerignore 두 개 파일이 모두 생성되면, .toml 파일도 따라서 생성됩니다.# fly.toml app con..

Run - 생성 및 실행이미지를 기반으로 컨테이너를 생성 후 실행합니다. docker run을 반복해서 실행해도 생성된 컨테이너는 모두 다른 id를 가집니다.docker run [설정1] [설정값1] [설정2] [설정값2] ... [이미지 이름]아래는 명령어와 함께 설정할 수 있는 값들입니다.설정값내용입력 형식비고-ddetached 모드 : 백그라운드에서 컨테이너가 실행됨 -e환경 변수 설정 -iinteractive 모드 : 터미널을 통해 docker와 상호작용할 수 있음 -itinteractive 모드 + pseudo-TTY 모드 -p포트 포워딩 : 호스트 머신의 [포트1]을컨테이너의 [포트2]와 매칭-p [포트1]:[포트2] -tpseudo-TTY 모드 : 터미널 환경(tty)를 흉내내어출력..

Docker는 애플리케이션을 신속하게 구축, 테스트 및 배포할 수 있는 오픈 소스 가상화 플랫폼입니다. 동명의 기업에 의해 개발되었으며, 현재 업계 표준의 플랫폼으로 자리잡게 되었습니다.가상화? 가상화(Virtualization)는 하드웨어나 소프트웨어 자원을 마치 여러 개 인 것 처럼 나누거나, 반대로 여러 개의 자원을 모아 마치 하나인 것 처럼 흉내내어 실제처럼 사용할 수 있게 만드는 기술입니다. 하나의 물리적 기기에서 여러 개의 가상 머신(VM)를 실행하거나, 하나의 가상 서버에서 여러 개의 운영 체제(OS)나 애플리케이션을 실행하는 것도 모두 가상화의 예시가 될 수 있습니다. 좀 더 쉽게 비유해보겠습니다. 큰 오피스텔이 한 채 있을 때, 각 층마다 다른 업체 또는 사무실이 입주해 있을 것입니다...

1. 프로젝트 생성New Project로 새로운 프로젝트를 생성합니다.프로젝트의 이름을 입력하고, 필요에 따라 분류에 쓰일 태그 값을 지정합니다.함께 작업(=DB에 접근해야 하는)할 팀원을 추가합니다.2. 클러스터 생성프로젝트를 생성한 후, 본격적으로 DB를 생성하기 위해 클러스터를 만들어줍니다.플랜을 선택합니다. 제한적인 기능으로 무료 플랜도 사용 가능합니다.클러스터의 이름과 이용할 서비스(AWS, Google Could, Azure), 그리고 지역을 선택합니다.모두 설정했다면 최하단의 Create Deployment로 진행해줍니다.다음으로 DB를 사용할 사용자 계정을 생성합니다.처음에 mongoDB에서 임의로 사용자 이름과 암호를 생성해주는데, 원하는 대로 수정하여 사용할 수도 있습니다.이름과 암호를..

MongoDB는 NoSQL*의 일종으로, SQL을 사용하지 않는 document 지향형 DBMS입니다.Document 모델에서 데이터는 키와 그에 해당하는 document의 매핑으로 이루어집니다. * NoSQL : 관계형 데이터베이스(RDBMS)의 SQL 뿐만이 아닌 다른 방식도 사용하는 데이터베이스 시스템의 총칭 쉽게 말하면, 하나의 document가 일반적인 DB에서 하나의 row에 해당됩니다. Document의 집합은 collection으로, DB의 table에 해당합니다. 이러한 특징에 의해 MongoDB는 고정된 schema를 사용하지 않고, json 형식을 이용해 schema를 동적으로 관리합니다. MongoDB는 이를 지원하는 호스팅 웹 서비스인 MongoDB Altas에서 사용할 수 있습니..

1. PostgreSQL 웹 DB 생성1) New > PostgreSQL을 선택합니다.2) 아래와 같이 정보를 입력합니다.- Name : 원하는 이름- Database : PostgreSQL DB의 이름- Region : Singapore (Southeast Asia)- PostgreSQL Version : 설치한 PostgreSQL의 버전3) 플랜을 선택합니다.4) DB가 생성될 때까지는 시간이 걸립니다.생성된 후에는 Connections > Internal Database URL을 복사합니다.2. Render 웹 서비스 생성1) New > Web Services를 선택한 뒤, 배포하고자 하는 Github 저장소를 선택합니다.만약 연동된 Git 플랫폼이 없다면, [여기] 참고2) 다음과 같이 설정합니다..

Render는 서버의 배포를 도와주는 웹 서비스입니다. New > Web Service로 이동합니다.Github를 선택하고,(GitLab이나 Bitbucket을 사용해도 무방합니다)추가 팝업창으로 나오는 인증절차를 진행합니다.Render 설치가 완료되면 다음과 같이 Github와 Render가 연동되어 있는 것을 확인할 수 있습니다.
DB API를 구현할 때는 한 번의 요청에 대해 여러 개의 함수를 실행하는 경우가 있습니다.이 때 중요한 것은 모든 함수가 한 번에 수행되어야 하는 것인데,중간에 오류가 발생해 처리가 중단되면, 처리가 완결되지 않은 불완전한 상태로 남기 때문입니다. 예를 들어 상품 재고를 관리하는 서버를 생각해봅시다.아래 코드는 주문(order) 요청을 처리하는 엔드포인트로, 크게 두 가지 절차를 진행합니다. 1. order 테이블에 새로운 주문정보에 해당하는 record를 추가 2. 해당 주문에서 요청한 상품들의 수량만큼 product 테이블에서 각 record들의 quantity를 감소(자세한 구현사항은 생략했습니다)const prisma = new PrismaClient();app.post('/order..