본문 바로가기

분류 전체보기89

pm2 로그 관리 : pm2 logrotate pm2 로그를 효율적으로 관리하기 위해 pm2 logrotate 를 사용한다.로그파일을 용량설정에 따라 날짜별로 잘 분리해주며, 오래된 파일은 삭제도 해준다. pm2 logrotate 설치하기pm2 install pm2-logrotate@2.6.0 * 2.6.0 이 최신버전이 아니지만 최신버전인 2.7.0 에 문제가 있어 @2.6.0 버전으로 설치한다. (로그를 날짜별로 잘 분리해주지 못하는 버그 있음) logrotate 의 설정 상태 조회pm2 conf위 목록에 나온 명령셋을 실행하면 설정을 변경할 수 있다. ex) max_size 를 1M로 변경pm2 set pm2-logrotate:max_size 1M  node 의 전반적인 상황 모니터링pm2 monit 끝 2025. 2. 25.
mariaDB 계정 패스워드 변경하기 sql> SET PASSWORD FOR 'userid'@'localhost' = PASSWORD('mypassword');sql> SET PASSWORD FOR 'userid'@'%' = PASSWORD('mypassword');끝 2025. 2. 25.
nodejs 무중단 서비스 : pm2 nodejs 로 서버를 구성하면, 오류발생시 node서버가 죽어버리는 경우가 생긴다. (죽으면 그대로 서비스 정지)pm2모듈은 위와 같은경우 자동으로 재시작하게 해준다. 그 외 클러스터, 로그 등등 편리한 점이 많으니 꼭 사용하자. pm2 설치npm install -g pm2 서비스의 실행 pm2 start {파일명} 서비스 실행 목록 보기pm2 list 상태 확인pm2 status 서비스 정지pm2 stop {파일명} 서비스 리스타트pm2 reload {파일명}또는pm2 restart {파일명} 프로세스 삭제pm2 delete {파일명} 로그 보기pm2 log {process name | process id] 끝. 2025. 2. 25.
Linux : nodejs, npm 개발환경 구성 (+ 버전관리 : nvm) 설치하기 이전에 먼저 저장소 업데이트 진행apt update && apt upgrade nodejs, npm 설치apt install nodejs npm 설치된 node 버전 확인node -v버전을 확인 해보고, 원하는 버전이 아닌경우 아래에서 추가 설정한다. (디폴트로 설치된버전은 한참 아래 버전이므로, 대부분 원하는 버전이 아닐듯...) nvm 설치 (nodejs 버전 관리용)curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bashsource ~/.bashrc nodejs 최신 버전 목록 조회nvm list-remote 위에서 조회된 버전을 확인 후 원하는 버전으로 선택하여 설치 (아래는 20.18.3 를 선택하여 .. 2025. 2. 25.
간단한 모바일 카드 이미지 만들기 새해 카드 만들기  https://www.sketchmon.com 1. 새로 만들기 팝업에서 빈문서 > 모바일 메세지 선택하고 더블클릭  2. 흰 캔버스에 배경 이미지를 넣어보자새로 열린 문서 우측 탭메뉴 중 [배경 검색]을 선택하고, 상단에 "배경" 이라고 입력한 뒤 검색버튼을 클릭하거나 키보드 엔터 입력.  3. 우측탭에 검색된 이미지 중 마음에 드는 이미지를 골라 캔버스로 드래그하거나 더블클릭하면 캔버스 배경이미지로 적용된다.  4. 제목을 넣어보자 (이미지로)우측탭에서 [이미지 검색] 클릭하고 상단에 "2025" 라고 입력하고 검색한 뒤 마음에 드는 제목이미지를 캔버스로 드래그 한다.삽입된 이미지는 사이즈를 적당히 조절하여 캔버스에 맞춘다.  5. 메세지를 입력하자상단 [글상자] 아이콘을 한번 클.. 2025. 2. 15.
[sketchmon canvas] 스케치몬 : 사각박스 및 글상자 그리기 https://www.sketchmon.com 1. 빈 문서를 생성하면 아래 화면이 열린다.  2. 박스 그리기 : 상단 [도형] 그리기 버튼을 클릭 후 아래 캔버스에 마우스로 드래그 한다. (1 ~ 2 번 순서)  3. 글상자 그리기 : 상단 [글상자] 그리기 버튼 클릭 후 아래 캔버스 특정 위치에 마우스로 클릭한다.    이후 내용을 입력한다. https://www.sketchmon.com 2025. 2. 13.
[sketchmon canvas] 스케치몬 접속 / 로그인 / 최초 화면 https://canvas.sketchmon.com 스케치몬 최초 접속 / 로그인 화면  로그인 후 최초 화면- 상단 [빈 문서] 중 하나를 더블클릭하면 해당 사이즈의 빈 문서가 열린다.- [빈 문서] 아래 디자인 템플릿들중 원하는 스타일을 더블클릭하면 해당 템플릿이 복사되어 새 문서가 열린다. 이후 수정하여 사용 2025. 2. 12.
특정필드값을 콤마로 붙여 조회하기 쿼리 select GROUP_CONCAT(email) AS user_emails from users; * 회원 디비내의 모든 회원의 메일주소를 콤마로 붙여 한번에 조회 2025. 2. 12.
scp 원격 파일 전송 현재서버에서 원격지 서버로 파일 전송scp -P 9999 /home/local/a.txt userid@remote_ip:/home/userid * 위 예제는 현재 서버의 /home/local/a.txt 파일을 원격지에(포트 9999) userid 계정으로 전송하기 (원격지 파일 저장 위치 : /home/userid* 실행시 원격지 계정의 비밀번호 입력 필요. 끝. 2025. 2. 12.
사용하려는 npm 패키지가 타입스크립트를 지원하지 않을때 사용 가능하도록 하기 (index.d.ts) 타입스크립트 프로젝트 내에 텍스트를 둥글게 만들어주는 "circletype" 라는 패키지를 사용하려는데, 이 패키지는 타입스크립트를 지원하지 않아 그냥 사용시 오류가 발생한다. 참고로 circletype 라는 패키지는 텍스트 문자열를 아래와 같이 둥글게 만들어 주는 패키지이다.관련 링크 : https://circletype.labwire.ca/  타입스크립트를 지원하지 않는 패키지를 그대로 사용시 아래와 같이 오류가 발생한다. 위 문제를 제대로 해결하려면 해당 패키지의 타입을 제대로 정의하고 사용해야 하겠지만, 임시로 일단 사용 가능하도록 하려면 아래와 같이 진행한다. 1. tsconfig.json 파일중 아래 (typeRoots) 항목을 추가 하고 저장* 아래 내용 중 typeRoots 설정은 원래 없.. 2025. 1. 15.
리눅스 : 주기적으로 현재시각 맞추기 (cron) 아래 코드를 크론에 등록하여 매일 정해진 시각에 인터넷 타임서버에 접속하여 시각 맞추기 crontab -e0 4 * * * /usr/sbin/rdate -s time.bora.net* 매일 오전 4시 정각에 time.bora.net 에 접속하여 시각 맞추기  끝. 2024. 12. 24.
nodejs 프로젝트 생성 : typescript, eslint, prettier 설정 ** nodejs 프로젝트 생성시 typescript 적용 1. nodejs 프로젝트 생성mkdir projectNamecd projectNamenpm init -ynpm i -D typescript ts-node nodemonnpx tsc --init 2. tsconfig.json 파일에 다음 내용 설정{..."target": "es6","module": "commonjs","outDir": "./dist","rootDir": "./src","strict": true,"moduleResolution": "node","esModuleInterop": true,...} 3. 프로젝트 루트에 dist와 src 폴더를 생성하고 src에 index.ts 파일 생성 4. packagejson에 다음 내용 설정{... 2024. 11. 13.