- [ Study/Spring ][Spring] Swagger UI 초기 세팅2025-01-26 22:48:15작업 환경STS4Spring Framework 6.x ...Spring Web 3.x ...+ API 서버는 현재 라즈베리파이 내부에 docker 컨테이너로 띄워져있는 상태 KDT 이후로 스웨거 세팅이 처음이라 오랜만이였다.세팅하게 된 계기는 심심해서 개인 프로젝트 만들 때 마다 MVC로 하다보니 xml 작성도 귀찮고..회사에서 API 서버 쓰는 거 보니까 나도 하나 만들면 좋겠다 싶어서 만들어놓고나서 보니 문서화가 안되어 있어서 보기 어려웠다.그래서 간단하게 적용 방법만 메모용으로 남긴다. 1. build.gradleimplementation 'org.springdoc:springdoc-openapi-starter-webmvc-ui:2.7.0' [참고] spring boot 3.x는 spring..
- [ Study/Spring ][Spring] Rest API ExceptionHandler2025-01-19 23:28:28Rest API 서버 만들면서 예외 처리에 대한 부분이 필요했다. 설명은 없고 메모용이라 간략간략하게 확인만 하자. 필자는 STS4(Spring Tool Suite 4)에서 진행한다. 패키지 구조는 아래와 같다. @Getter@AllArgsConstructorpublic enum ApiStatus { SUCCESS(200, "요청이 성공적으로 완료되었습니다."), CREATED(201, "리소스가 성공적으로 생성되었습니다."), BAD_REQUEST(400, "요청이 유효하지 않습니다."), UNAUTHORIZED(401, "권한이 확인되지 않았습니다."), FORBIDDEN(403, "접근이 거부되었습니다."), NOT_FOUND(404, "요청한 리소스를 찾을 수 없..
- [ Network/Linux ][Linux] 파일/디렉터리 권한 변경하기2025-01-19 23:21:18chmod 700 #{파일/디렉터리명} chmod는 파일 혹은 디렉터리의 권한 변경을 도와주는 명령어다. 더 자세한 내용은 chmod에 관한 포스팅을 알아서 읽어보자. 참고로 700은 소유자 빼곤 다 접근 불가능이다. chown #{계정명}:#{그룹명} #{디렉터리명} 깔끔하네~ 이후 FTP 프로그램(file zilla)으로 테스트해보니 해당 계정 빼곤 permission denied 에러가 뜨면서 접근이 불가능한 것을 확인했다. 생각지도 못했었는데 docker-compose up -d --build 때릴 때 권한 문제 때문에 에러 뜬다.요령 껏 바꿔주는 게 좋겠다.나같은 경우에는 chmod 명령어로 그룹까지는 rwx 가능하게 변경해놓고 그룹을 chown 명령어로 docker build용 계정이랑 배포..
- [ Network/Raspberry Pi 5 ][Raspberry Pi 5] Prometheus 시각화를 위한 Grafana 설치 및 연동2025-01-05 21:06:411. Grafana Image 설치docker pull grafana/grafana2. Grafana Docker 실행docker run -d --name=grafana -p 3000:3000 grafana/grafana3. Prometheus 연동 나는 외부에서도 접속할 수 있게 포트 포워딩 했으므로 공인 IP:3000으로 접속하였다. 만약 컴퓨터에서 가상 머신으로 설치했다면 포트 번호 앞에 localhost, 127.0.0.1로 접속이 가능 할 것이며 라즈베리파이와 같은 미니 PC를 사용해 네트워크를 따로 두고 있다면 해당 사설 IP:3000으로 접속이 가능 할 것이다. 나는 포트 포워딩 할 때 공인 IP:3000으로 접근할 경우 외부 포트 : 3000, 내부 포트 : 3000(3000은 Grafan..
- [ Network/Raspberry Pi 5 ][Raspberry Pi 5] Docker를 이용한 Prometheus 설치2025-01-05 00:49:40그렇다고 한다.. 궁금해져서 설치만 해보고 자야겠다. 1. Prometheus 이미지 설치docker pull prom/prometheus2. node_exporter 이미지 설치(시스템 메트릭을 제공하는 도구)docker pull prom/node-exporter3. Prometheus 설정 파일 생성nano prometheus.yml global: scrape_interval: 15sscrape_configs: - job_name: 'RASPBERRY_PI' static_configs: - targets: ['192.168.0.48:9100'] 15초마다 192.168.0.48:9100에서 node_exporter가 제공하는 메트릭을 수집하며 작업 이름은 ‘RASPBERRY_PI’ ..
- [ Network/Raspberry Pi 5 ][Raspberry Pi 5] 운영(배포) 서버에 파일 업로드 시 하드디스크 경로에 업로드하기2025-01-04 23:17:16해당 포스팅 참고하기 전에 생각해보자.쥔장은 굳이굳이 root 계정을 SFTP로 접근할 수 있게 끔 만들어놓고 File Zilla로 파일을 옮겼다.해당 포스팅을 작성한 후 생각해보니 Volume 폴더를 'cp' 명령어로 복사한 후 하드디스크 마운트한 폴더 내에 'mv' 명령어로 이동 후 이름만 변경하면 쉽게 해결될 수 있는 문제였다!다만 열심히 글을 작성한 후 깨달았다!이 글을 읽기 전에 정말로 이렇게 해야하는지 생각해보자!나는 이미 했기 때문에..그리고 글을 정말 정성스럽게 적었기 때문에 삭제하진 않겠다. 이걸 운영 서버라고 하나.. 배포 서버라고 하나.. 회사에선 실서버, 운영 서버라고 얘기하는데 집에서 사이드 프로젝트 배포하는 서버를 운영 서버라고 하기엔 너무 거창해서 쩝.. 여튼 개발 서버는 Wi..
- [ Network/Raspberry Pi 5 ][Raspberry Pi 5] ‘내 PC’에 마운트한 하드디스크 추가하기2025-01-04 14:11:48[Raspberry Pi 5] 라즈베리파이5 하드디스크 마운트공부할 겸 클라우드 안쓰고 내 꺼 쓰려고 9월 초에 라즈베리파이5 사면서 하드디스크 1TB도 중고로 샀었다. 라즈베리파이에 하드디스크 붙이는 건 이제서야..(무려 3개월이 지난…..) 라즈베리mytilblog.tistory.com [Raspberry Pi 5] 마운트한 하드디스크 Windows 파일 탐색기로 접속하기(+ Samba)1. Samba 설치apt install samba samba-common-bin2. 설정 파일 수정nano /etc/samba/smb.conf [hdd]path = /hddread only = nowriteable = yesbrowseable = yescreate mask = 0755directory mask =..
- [ Network/Raspberry Pi 5 ][Raspberry Pi 5] 마운트한 하드디스크 Windows 파일 탐색기로 접속하기(+ Samba)2025-01-03 21:19:181. Samba 설치apt install samba samba-common-bin2. 설정 파일 수정nano /etc/samba/smb.conf [hdd]path = /hddread only = nowriteable = yesbrowseable = yescreate mask = 0755directory mask = 0755guest ok = novalid users = root, jy [hdd] : 네트워크에서 보여질 이름path : samba가 공유할 디렉토리 경로writeable = yes : 쓰기 권한 허용 여부read only = no : 읽기 전용 해제 및 쓰기 허용browseable = yes : 네트워크에서 이 공유가 보이게 설정guest ok = no : 인증된 사용자만 접근 허용vali..