
전환 이유레퍼런스들을 찾아보면, 대부분이 PM2를 통해 간편하게 인스턴스를 띄워 사용하다가, 컨테이너 단위로 전환하고 노드 환경에서는 추가로 pm2-runtime을 도커 컨테이너 내부에서 적용하는 경우를 많이 봤던 것 같다. 나는 반대로, 현재 운영중인 서비스를 계속해서 개발하면서 겪은 문제들을 개선하기 위해 배포 파이프라인을 Git Actions - Docker에서 Git Actions - PM2로 전환하였다. 1. 긴 배포 시간 (길면 3~5분, 평균 1분 후반대)2. 간헐적인 서비스 장애 탐지의 위치 이동 서버와 백엔드 코드를 혼자 관리하다 보니 빈번하게 코드를 업데이트해야 한다. 테스트 같은 안전 장치의 통과를 위해 소요되는 시간은 언제나 수긍하지만, Docker 프로세싱의 긴 소요 시간은 점차 ..
![[로그 분석/시각화 - 1] 기존 로그 관리의 문제점과 PLG로 로그 시각화 구현해보기 (Promtail, Loki, Grafana / ELK)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcUHql1%2FbtsESK4jtsp%2FnNqCjnN9DMabByGKDKJW4K%2Fimg.png)
개발 동기현재 사내 서비스들에 대한 로그는 winston으로 날짜별/레벨별로 관리되고 있다. nest-winstonA Nest module wrapper for winston. Latest version: 1.9.4, last published: 6 months ago. Start using nest-winston in your project by running `npm i nest-winston`. There are 236 other projects in the npm registry using nest-winston.www.npmjs.com export const winstonLogger = WinstonModule.createLogger({ transports: [ new w..
![[Git Actions / Docker] An image does not exist locally with the tag: [repo]/[image]](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbHuWDB%2Fbtst6oyyqLM%2F2gkHLBJAQqe94uiGDx6Oi0%2Fimg.png)
에러 메세지 An image does not exist locally with the tag: [repo]/[image] 아래와 같은 action.yml을 사용하고있었는데 계속해서 리파지토리에 이미지를 빌드한 후 태그를 못잡아 주는 것 같았다. name: Docker Image CI on: push: branches: [ "main" ] jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - name: Login Dockerhub env: DOCKER_USERNAME: ${{secrets.DOCKERHUB_USERNAME}} DOCKER_PASSWORD: ${{secrets.DOCKERHUB_PASSWORD}} run: docke..

도커 입문단계에서부터 시작된 무언가.. 쉬운게 없다 역시.. wsl --update를 커널에다 입력하라는 것 같다. 해결 PowerShell에서 wsl --update 명령어를 입력해서 업데이트를 진행 만약 0%에서 올라가지 않는다면, 아래 포스팅을 참조 [Docker] wsl 무한대기 (feat. Docker Desktop requires a newer WSL kernel version) 서버에서 GitLab과 Jenkins를 돌리려는데 Jenkins를 잘 모르겠다. 스케줄링과 같은(더 많은 서비스가 있겠지만) 개념으로 .sh을 실행하는 것 같긴 한데, 익숙지가 않아서 인프런에 강의를 구매. 근데 Win park-duck.tistory.com