반응형

전체 글 377

[깃허브] 슬랙 알림 연동

별로 어렵지 않습니다. 일단 채널을 생성합니다. 채널내에서 채널 이름을 클릭하면 팝업 모달이 출력됩니다.  앱 추가를 클릭합니다. 깃 허브를 설치합니다.엔터프라이즈는 아니니까 깃허브만 찾아 검색합니다.  자 설치가 되면 connect 버튼을 클릭합니다.인증 작업을 진행 후 코드버튼이 보입니다.해당 버튼을 복붙하여 붙여넣읍시다. 이제 여기서 입력창에서 /github subscribe 유저의 레포를 넣어주세요. 해당 내용이 완료되면, 아래와 같은 문구를 출력합니다. 여기서 알림은 모두 main(master) branch의 내용만 나옵니다.# main(or master) 브랜치 뿐아니라 모든 브랜치의 알림을 수신합니다./github subscribe owner/repository branches commits..

코딩/slack 2025.01.23

시놀로지 ssl 와일드카드 인증서 발급.

내용은 해당 내용을 바탕으로 적었습니다.https://velog.io/@atmost1815/Synology%EC%97%90%EC%84%9C-Wildcard-SSL-%EC%9D%B8%EC%A6%9D%EC%84%9C-%EC%9E%90%EB%8F%99-%EA%B0%B1%EC%8B%A0%ED%95%98%EA%B8%B0 Synology에서 Wildcard SSL 인증서 자동 갱신하기certbot과 cloudflare를 이용한 Synology Wildcard SSL 인증서를 발급 받고 자동으로 갱신하는 방법velog.io해당 링크내용에 모든 내용이 다 적혀있으나 없는 부분이 있어 작성함.  #!/bin/bashCONTAINER_NAME=certbotdocker run -it --rm \ --pull=always ..

코딩/시놀로지 2025.01.19

[풀스택 사이드 프로젝트] 블로그 next.js and node koa 프로젝트 후기

프로젝트는 블로그 프로젝트입니다. 1. next.js지만, 실질적으로는 react에 가까운 코드입니다.(spa 위주로 코드 적용)2. app라우팅으로 진행하였고,  구조를 store, lib, component로 분리하였며,ui컴포넌트와 container컴포넌트(실행함수 제어)를 분리하여 구분하였습니다.3. redux toolkit 그리고 rtk-query를 적용하여, 사용하여 각 페이지별 코드를 분할하였습니다.(/auth, /post 등)4. 인터셉터를 적용하여 서버 통신방식을 Baerer에 붙이거나 또는 쿠키를 통해 적용하여 해당 값을 받게 하였습니다. 1. koa쪽에선 jsonwebtoken을 적용하여, 리프레쉬토큰 발급과 액세스토큰을 발급하여 해당 코드를 통해 코드 갱신주기를 하였습니다. 해당 토..

[알고리즘] 알고리즘 공부 2일차

힙(Heap)과 이진 트리(Binary Tree)는 둘 다 트리 구조를 기반으로 하지만, 그 목적과 특징에서 차이가 있습니다. 아래에 주요 차이점을 정리해 보았습니다. 1. 구조적인 차이 • 힙(Heap) • 완전 이진 트리(Complete Binary Tree)로 구성됩니다. • 즉, 마지막 레벨을 제외한 모든 레벨이 꽉 차 있으며, 마지막 레벨도 가능한 왼쪽부터 노드가 채워져 있습니다. • 부모와 자식 간의 우선순위 조건을 만족해야 합니다. • 최대 힙(Max Heap): 부모 노드의 값이 자식 노드의 값보다 크거나 같다. • 최소 힙(Min Heap): 부모 노드의 값이 자식 노드의 값보다 작거나 같다. • 이진 트리(Binary Tree) • 노드당 자식 노드가 최대 2개인 트리입니다. • 구조적..

코딩/알고리즘 2024.12.26

[알고리즘] 알고리즘 공부 1일차

알고리즘의 정의.1. 컴퓨터에서 실행하도록 컴퓨터가 이해할 수 있는 게 프로그램2. 위의 내용을 작성하기전에 사람이 이해할 수 있도록 작성한 것. 정렬 알고리즘 숫자를 한번 움직여서 고정시키는 것을 "라운드"라고 한다.  완전 탐색 알고리즘n! 선택정렬 알고리즘n2 데이터 구조란?데이터의 순서와 위치 관계를 결정한다. - 데이터를 메모리에 저장할 때, 데이터의 순서나 위치 관계를 규정한 것이 데이터 구조  리스트 데이터를 일직선으로 정렬산 데이터 구조

코딩/알고리즘 2024.12.24

[Mongodb] 몽고디비 설정하기 및 기본 CRUD

설치 명령어brew tap mongodb/brewbrew install mongodb-community@7.0brew services start mongodb-community@7.0 기본설정import mongoose from 'mongoose';const { PORT, MONGO_URI } = process.env;mongoose .connect(MONGO_URI) .then(() => { console.log('Connected to MongoDB'); }) .catch((e) => { console.error(e); });// MONGO_URI 가 mongodb://localhost:27017/[테이블이름]  스키마 설정import mongoose from 'mongoose';..

코딩/Node.js 2024.12.09

[koa] Import / export syntax 적용하기

원래는 import, export를 무조건 esm 이라는 라이브러리를 이용해야했지만, 해당 문법이 이미 최신 node에서 사용이 가능하다. 즉 수정할 곳은 두곳인데, 한개도 생략이 가능하다. // package.json 파일 추가"type": "module" 아래가 생략이 가능한 부분.// .eslintrc.json { "env": { "node": true, "es2021": true }, "extends": ["eslint:recommended", "prettier"], "globals": { "Atomics": "readonly", "SharedArrayBuffer": "readonly" }, "parserOptions": { "ecmaVersion": 2020..

코딩/Node.js 2024.12.09

[koa] koa 학습하기 - 2 - 컨트롤러 적용

yarn add koa-bodyparser // index.js// 내용 수정한다const Koa = require('koa');const Router = require('koa-router');const bodyParser = require('koa-bodpareser');const api = require('./api');const app = new Koa();const router = new Router();router.use('/api', api.routes());// 라우터 적용전에 적용app.use(bodyParser());// app 인스턴스에 라우터 적용app.use(router.routes()).use(router.allowedMethods());app.listen(4000, () => ..

코딩/Node.js 2024.12.08

[koa] 코아 프레임워크 학습 - 1 - 라우팅 기능적용

express 개발자들이 express의 단점을 고치고자 했으나 내부구조가 변경되어야 하므로React처럼 view 즉, 미들웨어 부분만 따로 빼서 만든 프레임워크입니다.express처럼 여러 기능이 내장되어 있는 게 아니라서 추가로 설치해야합니다. express를 사용할 줄 아나 원활히 사용한다고 생각되지 않아, 해당 코드를 학습합니다. index파일 하나에 넣고 코드를 적용할 수 없어, 해당 코드를 분할합니다. yarn add koa koa-routeryarn add koa koa-router/// index.jsconst Koa = require('koa');const Router = require('koa-router');const api = require('./api');const app = ne..

코딩/Node.js 2024.12.08
728x90