목록All (100)
ㅇ.ㅇ

Tomcat의 bin 디렉토리 안에는 다양한 파일들이 있어서, 오늘 한번 찾아보며 정리를 하려고 한다. Tomcat의 bin 디렉터리에는 다양한 스크립트 및 실행 파일이 포함되어 있다. 이 파일들은 Windows와 Linux(macOS 포함)에서 Tomcat을 실행하고 제어하는 데 사용된다.1. Tomcat 시작 및 종료 관련 파일 파일명 설명 실행 환경 catalina.shTomcat 서버 실행 및 관리하는 메인 스크립트 (Linux/macOS용)Linux/macOS (SH)catalina.batTomcat 서버 실행 및 관리하는 메인 스크립트 (Windows용)Windows (BAT)startup.shTomcat을 백그라운드에서 실행하는 스크립트 (catalina.sh start와 동일)Linux/..

Stirling PDF이란? Stirling PDF는 브라우저에서 PDF를 변환, 편집, 병합, 분할할 수 있는 오픈소스 웹 애플리케이션이다. Docker를 사용하면 별도 환경 설정 없이 빠르게 실행할 수 있다.PDF 병합, 분할, 압축OCR (광학 문자 인식) 지원Word, Excel, PowerPoint → PDF 변환이미지(PNG, JPG) → PDF 변환PDF 보호 및 암호 해제다크 모드 지원자체 호스팅 가능 (클라우드 의존 없음) Docker로 Stirling PDF 설치하기docker run -d --name stirling-pdf -p 8080:8080 --restart unless-stopped ghcr.io/frooodle/s-pdf:latest-d → 백그라운드에서 실행.--name s..

에러 내용java.nio.file.AccessDeniedException: /var/jenkins_home/workspace/TEST 에러 파악Jenkins가 mkdirs() 메서드를 호출하여 디렉토리를 생성하려고 했지만, 접근 권한이 부족하여 실패하였다. Jenkins 컨테이너 내부 혹은 호스트 머신의 디렉토리 권한 설정 문제일 가능성이 큼. 해결 방법Jenkins가 워크스페이스에 접근할 수 있도록 디렉토리 권한을 수정해야 한다.(1) Jenkins 컨테이너 내부에서 권한 수정 # Jenkins 컨테이너 내부 접속docker exec -it jenkins /bin/bash# 현재 워크스페이스 디렉토리 확인ls -l /var/jenkins_home/workspace# 디렉토리 권한 수정chmod -R 7..

에러 내용24-Jan-2025 13:54:04.072 정보 [main] org.apache.catalina.core.StandardContext.checkUnusualURLPattern 의심스러운 URL 패턴: 컨텍스트 [/project] 내의 [/test/**]. 서블릿 스펙의 12.1장과 12.2장을 참조하십시오. 에러 파악톰캣에서 출력되는 이 로그 메시지는 [/test/**] 와 같은 서블릿 매핑이 서블릿 스펙(12.1, 12.2)에 맞지 않다는 경고다. Servlet 표준 스펙에 따르면 매핑 방식은 크게 다음 두 가지 형태만 공식적으로 허용된다.경로 매핑예: /test/*특정 경로 이하의 모든 요청을 해당 서블릿으로 라우팅한다./test/로 시작하는 URL이 매핑 대상이 된다.확장자 매핑예: *...

로그 레벨이란?로그 레벨은 시스템에서 발생하는 이벤트를 중요도에 따라 구분하여 기록하는 기준이다. 로그 레벨을 적절히 설정하면, 불필요한 로그나 알람을 줄이고 긴급한 문제에 집중할 수 있다. 특히, 로그는 시스템 모니터링과 문제 해결의 핵심 도구이기 때문에, 레벨별 역할과 사용 방법을 명확히 이해하는 것이 중요하다. 대표적인 로그 레벨과 활용DEBUG용도 : 개발 환경에서 내부 로직 흐름을 추적하거나, 디버깅 시 세부 정보를 확인할 때 사용.특징 : 너무 많은 로그를 남길 수 있으므로 운영 환경에서는 일반적으로 비활성화.예시 : 메서드 호출 순서, 파라미터 값 확인 등.INFO용도 : 애플리케이션의 정상 동작과 주요 이벤트를 기록.특징 : 운영 환경에서도 남기는 경우가 많으며, 시스템 상태 파악 및 장애..

이번에 리눅스 서버를 포맷하고 새로 구축하는 과정에서 ios 파일이라는 단어를 들었는데 부끄럽지만 처음 들어보게 되었다. 그래서 찾아보고 정리해서 적어보는 글이다. 1. ISO 파일이란?ISO 파일은 CD, DVD, Blu-ray와 같은 광학 디스크의 내용을 그대로 복제한 디스크 이미지 파일 형식이다. 이름은 International Organization for Standardization(국제 표준화 기구)에서 유래했으며, 디스크 구조를 표준화한 형태로 다양한 환경에서 활용된다. 쉽게 말해, 디스크 전체를 하나의 파일로 압축한 것이라 보면 된다. 2. ISO 파일의 특징디스크 이미지디스크의 모든 데이터와 구조(파일 시스템, 디렉터리, 부트 로더 등)를 포함.읽기 전용 형식ISO 파일은 수정 불가능하..

이번에 소나큐브를 사용해서 웹 취약점 부분을 파악하다가, 파일경로와 같은 부분에서 normalize()를 이용하라는 팁을 보았다. normalize... 사용해본적이 없기에 이번기회에 정리를 해본다. 1. normalize()란? normalize() 메서드는 파일 경로(Path)를 정리하고 단순화하는 역할을 한다. Java의 NIO (New I/O) 패키지에서 제공되는 이 기능은 경로 문자열에 포함된 불필요하거나 모호한 요소(예: ., .., 중복된 슬래시 등)를 제거해 깔끔하고 표준화된 경로를 생성한다. 쉽게 말해, 복잡한 경로를 정리해 읽기 쉽고 명확한 경로로 변환해주는 도구인 것이다. 2. normalize() 주요 역할 1. 불필요한 경로 요소 제거: 경로 내에 있는 . (현재 디렉토리)와 ..
이번에는 Docker를 활용해 SonarQube를 설치하고, 간단한 기본 설정을 진행하는 과정을 정리해보려고 한다. Docker를 이용하면 설치와 관리를 빠르고 간편하게 할 수 있으니, 처음 SonarQube 사용하는 사람들에게 특히 추천한다. 1. SonarQube 도커 설치(공식 가이드 참조 : SonarQube 설치에 대해 자세한 내용이 필요하다면 SonarQube 공식 사이트를 참고하자)1. 도커 이미지 다운로드아래 명령어로 SonarQube 이미지를 다운로드한다.# 이미지 가져오기docker pull sonarqube# 이미지 목록 확인docker images 태그는 community, latest 등을 사용할 수 있으며, 생략하면 기본적으로 최신 버전을 가져온다.2. 컨테이너 실행다운로드한 이..

최근 보안 취약점 패치를 많이 진행하면서 자연스럽게 효율성, 가독성, 유용성등과 같은 코드 품질에 대해 고민하게 되었다. 그러다 코드를 스캔해 문제점을 바로 찾아주는 소나큐브(SonarQube)를 사용해 보게 됐다. 유명한 도구라 다들 한 번쯤은 들어봤을 법한데, 이 소나큐브를 기반으로 만든 플러그인이 바로 소나린트(SonarLint)다.일단 한두 번 설치해서 테스트해 보는 중인데, 사용해 보면서 관련 내용을 정리해 블로그에 남기면 좋겠다는 생각이 들었다. 단순히 쓰는 것과 제대로 알고 쓰는 건 확실히 다르니까.SonarQube란 무엇일까 소나큐브는 코드 품질을 자동으로 분석하고 관리해 주는 도구이다. 개발자가 작성한 코드를 스캔해서 문제점(버그, 보안 취약점, 비효율적인 코드)을 찾아내고, 이를 해결할..

FCM은 무엇인가 FCM(Firebase Cloud Messaging)은 Google이 제공하는 크로스 플랫폼 메시징 서비스로, 앱 개발자가 Android, iOS, 웹 애플리케이션에 푸시 알림을 전송할 수 있도록 지원합니다. 기존의 GCM(Google Cloud Messaging)을 대체하며, 보다 간단하고 강력한 기능을 제공합니다. FCM의 주요 기능 푸시 알림 전송 : 클라이언트 애플리케이션에 푸시 알림 메시지를 전달.데이터 메시지 전송 : 사용자 지정 데이터 페이로드를 클라이언트에 전달.주제 메시징(Topic Messaging) : 특정 주제에 구독한 다수의 사용자에게 메시지 브로드캐스트.조건 메시징(Condition Messaging) : 논리 조건(예: 'TopicA' in topics && ..