본문 바로가기

전체글32

젠킨스 플러그인 설치 실패 이슈 Jenkins가 설치된 서버가에 SSL 인증서가 설정되어 있지 않은 경우 통신에 실패하기 때문에 발생업데이트 사이트의 프로토콜을 http로 변경또는 서버 SSL 인증서 설정    Dashboard > Jenkins 관리 > Plugins   재시작sudo systemctl restart jenkins 2024. 11. 29.
ubuntu에 젠킨스 (jenkins) 설치 Jenkins는 소프트웨어 개발과 배포를 자동화하는 도구 다양한 플러그인을 통해 CI/CD(Continuous Integration/Continuous Delivery)를 구현할 수 있도록 지원  설치자바 설치sudo apt updatesudo apt install fontconfig openjdk-17-jrejava -version 젠킨스 설치sudo wget -O /usr/share/keyrings/jenkins-keyring.asc \ https://pkg.jenkins.io/debian-stable/jenkins.io-2023.keyecho "deb [signed-by=/usr/share/keyrings/jenkins-keyring.asc]" \ https://pkg.jenkins.io/deb.. 2024. 11. 29.
ubuntu에 mysql 설치하기 설치sudo apt updatesudo apt install mysql-server 실행sudo systemctl start mysql 서버 재부팅 시 mysql 자동 시작 설정sudo systemctl enable mysql 포트 오픈mysql의 기본 포트는 3306보안 그룹에서 3306 포트 오픈aws같은 클라우드 환경에서 보안 그룹은 VPC 수준에서 트래픽을 제어하므로 해당 EC2 인스턴스에 도달하기 전부터 외부 트래픽을 필터링ufw 같은 로컬 방화벽이 설정되어 있지 않아도 외부로부터의 접근은 보안 그룹 설정에 의해 차단 config 설정외부 접속 허용sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf[mysqld]bind-address = 0.0.0.0기본 설정인 127... 2024. 11. 18.
apt와 apt-get의 차이 apt와 apt-get 모두 Ubuntu와 같은 Debian 기반 리눅스 시스템에서 패키지 관리를 위해 사용 apt-get1998년 도입된 오래된 명령어로 핵심 Linux 프로세스와 더 긴밀하게 통신하는 낮은 수준의 인터페이스 제공검색 대신 apt-cache 명령어를 사용apt-get upgrade 시 패키지의 이전 버전이 파일 시스템에 남음각 apt-get 명령의 기본적인 결과가 세부 정보 없이 출력apt2014년에 도입된 새로운 명령어로 apt-get의 주요 기능을 통합하여 사용 친화적이고 직관적인 명령어 제공apt-get을 대체하여 모든 Debian 기반 Linux의 기본 패키지 관리자 도구로 선정apt search 으로 패키지 검색 가능apt-upgrade 시 패키지의 이전 버전 파일 시스템 삭.. 2024. 11. 17.
apt update와 upgrade의 차이 apt update설치 가능한 패키지 목록을 최신 상태로 가져오는 명령어새로운 버전의 프로그램이 배포되었을 때, ubuntu는 이를 공식 서버에 등록하고 우리가 apt update 명령어를 실행하면 새로운 버전에 대한 정보를 가져온다.이 과정은 실제 프로그램을 업데이트하지 않고, 단지 정보만 갱신한다.대부분의 가이드에 update 후 install 하는 이유가 여기에 있다. apt upgrade현재 시스템에 설치된 패키지를 실제로 최신 버전으로 업그레이드 이미 설치된 패키지를 최신 버전으로 업그레이드한다.업그레이드를 통해 보안 배치나 성능 개선이 반영된 최신 버전이 설치된다. 2024. 11. 5.
ubuntu에 Java 설치 패키지 목록 최신화sudo apt update패키지 목록은 각 패키지의 최신 버전, 의존성 정보, 보안 패치 등을 포함한다.최신 패키지 목록을 가져와야 보안 패치나 버그 수정이 반영된 버전을 설치할 수 있다.설치 가능한 openjdk 리스트 확인sudo apt list openjdk* 원하는 버전 설치sudo apt install openjdk-17-jdk 설치된 자바 버전 확인java -version 환경 변수 설정 없이도 java 명령어가 인식되는 이유패키지 관리 시스템이 자동으로 경로 설정을 관리한다.ubuntu는 update-alternatives 시스템을 통해 설치 경로를 관리한다.jdk를 설치하면 /usr/bin/java에 대한 심볼릭 링크가 설정되어 java 명령어가 실행 파일을 기리키게 된.. 2024. 11. 5.
zustand에 devtools 사용하기 zustand에는 별도로 시각화 할 수 있는 devtools가 없기 때문에 redux devtools와 연동한다이 때 redux 설치는 필요없다. 크롬에서 redux devtools 설치https://chromewebstore.google.com/detail/redux-devtools/lmhkpmbekcpmknklioeibfkpmmfibljd?hl=ko store에 devtools 적용import { create } from "zustand";import { devtools } from "zustand/middleware";type CounterStore = { count: number; increment: (by: number) => void; decrement: (by: number) => vo.. 2024. 10. 27.
NVM으로 nodejs 버전 관리하기 Node Version Manager (NVM)은 여러 nodejs 버전을 쉽게 관리하고 전환할 수 있게 해주는 도구 등장 배경npm으로 설치한 한 가지 node 버전만으로 모든 프로젝트를 실행하려고 하면 정확한 실행 결과를 얻지 못할 수 있다.예를 들어 내가 사용하고 있는 버전은 10인데  A 프로젝트는 node 17버전을 요구한다면 에러가 발생할 수 있다.실무에서 여러 프로젝트를 작업하기 때문에 이때마다 node 버전을 삭제하고 새로 설치하는 것은 번거롭다.여러 버전을설치한다고 해도 node 버전 각각에 독립적인 글로벌 모듈 설치 공간이 필요하다.nvm은 위의 문제를 모두 해결하여 각 프로젝트 별로 다른 node 버전으로 실행할 수 있다.설치Windowhttps://github.com/coreybut.. 2024. 10. 26.
크론 표현식과 크론탭 명령어 정리 크론(cron)은 리눅스 리눅스/유닉스 시스템에서특정 시간에 명령어나 스크립트를 자동으로 실행하게 도와주는 스케줄링 도구이며 이때 크론 표현식을 사용하여 실행 시간을 지정  *   *   *    *     *분 시 일 월 요일   명령어 필드의미와 값의 범위분몇 분에 실행할지0-59시몇 시에 실행할지0-23 (24시간제)일며칠에 실행할지1-31월몇 월에 실행할지1-12요일무슨 요일에 실행할지0-6 (0은 일요일)명령어실행할 명령어 또는 스크립트예: sh run.sh 특수 문자 의미* : 모든 경우에 해당 (예: 매일, 매월, 매주), : 여러 값을 지정할 때 사용 (예: 1,15 → 1일과 15일에 실행)- : 범위를 지정할 때 사용 (예: 1-5 → 1일부터 5일까지 실행)/ : 간격을 지정할 때 사.. 2024. 10. 15.