Linux 4

github action을 통한 ci cd 자동화(feat. shell script)

프로젝트를 진행하면서 CI / CD의 자동화 필요성을 절실하게 느끼게 되었다. 다른 것도 많았지만 기본적으로 github를 사용하고 있다보니 자연스레 github action을 사용해보자라고 생각했던 것 같다. 여기서 CI / CD 란 무엇일까? 필자가 자동화의 필요성을 절실하게 느낀 것처럼 매번 개발자가 코드를 수정하고 직접 빌드 및 테스트를 하고 배포까지 하게 된다면 그 시간 비용은 엄청날 것이다. 때문에 CI / CD의 개념을 알고 도입하는 것이 필요하다. CI : 빌드와 테스트를 자동화하는 것 지속적 통합(Continuous Integration) CD : 배포 과정을 자동화하는 것 지속적 서비스 제공(Continuous Delivery) or 지속적 배포(Continuous Deployment)..

Dev 2022.10.17

address already in use 에러 해결하기 ( awk와 함께 )

Node.js와 함께 작업하다보면 가끔 Error: listen EADDRINUSE: address already in use :::[Port] 이런 에러를 만날 때가 있다. 이는 비정상종료로 인해서 해당 포트가 점유되고 있어 사용할 수 없을 때 나타나는 에러이다. 평소 우리는 이 에러를 해결하기 위해 kill 명령어를 통해 해당 프로세스를 죽여서 해결하곤 했는데, 그 프로세스를 죽이기 위해선 PID 정보가 필요하다. 위와 같이 PID 정보를 확인해야 그제서야 kill -9 [PID] 를 통해 죽일 수 있었는데, 매번 그 과정이 너무 귀찮아서 생각하던 중 awk가 떠올랐다. awk awk란 pattern scanning and processing language이다. 파일의 각 열을 읽어 데이터를 원하는..

Dev 2022.04.02

Linux alias(별칭 지정) 명령어 영구 등록

리눅스로 작업하면서 항상 같은 디렉토리로 들어가기도 하고 반복적으로 치는 명령어가 많아서 alias 명령어를 활용하여 효율적으로 작업하고자 한다. 리눅스에는 기본적으로 별칭을 지정할 수 있는 alias라는 명령어가 존재한다. $ alias --help alias: alias [-p] [name[=value] ... ] Define or display aliases. Without arguments, `alias' prints the list of aliases in the reusable form `alias NAME=VALUE' on standard output. Otherwise, an alias is defined for each NAME whose VALUE is given. A trailing ..

Dev 2022.02.14

WSL2 - putty로 SSH 연결하기

WSL2를 활용하여 작업하던 중 갑자기 작업표시줄에 있는 putty가 보여 ssh로 접속해보고 싶단 생각이 들었다. 시도해봤더니 위와 같이 에러를 던졌다. ssh 서비스가 작동하고 있지 않는 것 같아서 우선 설치 유무부터 확인해주었다. 다행히도 설치가 되어있었다. 위 명령어를 통해 ssh가 실행되고 있지 않음을 확인하고, 서비스를 시작하려 했으나 이렇게 host key가 없다며 종료되었다. 해당 문구를 구글링해보니 거의 최상단에서 바로 해답을 찾을 수 있었다. https://www.garron.me/en/linux/sshd-no-hostkeys-available-exiting.html sshd: no hostkeys available -- exiting sshd: no hostkeys available ..

Dev 2021.12.31