[Tistory] [AWS EC2] 테스트 서버 에러 기록

✅ 테스트 서버API 1차 개발 완료 후, 프론트 분들이 테스트와 함께 개발하실 수 있도록 테스트 서버를 만들어 달라는 요청을 받았다.많은 클라우드 서비스가 있지만, 시간이 없는 관계로 전에 한번 경험했던 EC2를 사용해 테스트 서버를 배포했다.( 그때의 수많은 시행착오를 기억하지 못했다.. ) 서버는 그냥 간단하게 EC2에 Nginx를 설치해 배포했고 80번 포트로 요청했을 때, spring 서버인 8080포트로 연결되도록 설정해 주었다. ✅ 과정, 시행착오1. 먼저, EC2를 만들고, ssh 를 통해 연결해 주었다.이 과정은 예전 수업 자료를 통해 해주었고, ssh 연결 도중WARNING UNPROTECTED PRIVATE KEY FILE권한이 너무 많이 열려있어 발생하는 에러로, 해당 블로그를 참고..

[Tistory] 웹서버 모듈: http, figlet, express, nodemon

http 모듈http모듈은 Node.js에서 가장 기본적이고 중요한 웹 모듈입니다. 웹서버와 클라이언트 생성등 관련된 모든 기능을 담당합니다.  import http from ‘http’; //웹 관련 모듈http.createServer((req, res) => { res.writeHead(200, {‘Content-Type’:’text/html;charset=utf-8′}); res.write(‘환영합니다. 노드 서버 세상에 오신것을’); res.write(‘반가워요’); res.end(‘Hello~’); //응답종료 //res.write(‘헬로헬로’);}).listen(8080, () => { console.log(‘서버 서비스중…’);}); 터미널에서 서버를 켜고..

[Tistory] 서비스 배포하기: 3. Jenkins CI/CD 파이프 라인 구축(1) – 젠킨스 설치

0. 들어가면서앞선 과정을 통해 우리는 DNS 를 구축하여 사이트의 접근성을 높였으며 HTTPS 프로토콜을 사용하여 사이트의 보안성을 확보하였습니다.  상기한 작업을 통해 기초적인 배포 작업은 완수했다고 생각합니다. 그러나 소프트웨어 개발 생명주기(SDLC)의 대부분은 유지보수에 있는 것처럼, 유지보수적 측면에서의 편의성을 위해 추가적으로 해줘야할 작업이 있습니다. 그것은 바로 “CI/CD 파이프라인” 구축입니다. CI/CD에 대해서 살펴보기 전에, 현재 우리는 애플리케이션에서 버그 발생 시 로컬에서 디버그 실시 후 수동으로 명령어를 입력해 배포하거나 혹은 FileZila 와 같은 오픈소스 FTP 클라이언트를 사용해 직접 배포해줘야합니다.  물론 그 과정에서 일일이 chown, chmod 등을 통해 권한..

[Tistory] 도토리묵 vs 메밀묵, 건강하고 맛있는 묵의 세계

안녕하세요! 주자예요 이번에는 한국의 전통 음식인 묵에 대해 알아보려고 합니다. 묵은 한국인들에게 친숙한 음식으로, 도토리묵과 메밀묵은 그중에서도 특히 유명한 종류입니다. 이 두 묵의 차이점과 건강에 미치는 효과에 대해 알아보겠습니다. 또한 다른 종류의 묵에 대해서도 함께 살펴보겠습니다. 도토리묵의 제조 과정, 맛, 식감, 건강효과 도토리묵은 도토리를 주 재료로 사용하여 제조됩니다. 먼저 도토리를 불린 뒤 미리 준비한 묵통에 담고 약간의 소금과 함께 즙을 내어 고형화 시킵니다. 도토리묵은 고소하고 풍부한 도토리 향이 특징이며, 부드럽고 쫄깃한 식감을 가지고 있습니다. 도토리에는 식이섬유와 비타민B1, 비타민B2 등이 풍부하게 함유되어 있어 소화 개선과 혈액순환에 도움을 주는 효과가 있습니다. 다른 종류의..

[Tistory] [Packy] 멀티 모듈 프로젝트에서 서로 다른 모듈의 의존성 주입하기

1. 들어가며 이전 포스트에서 멀티 모듈 프로젝트를 생성해보았다. [Packy] 멀티 모듈 프로젝트 생성하기 저번 포스트에서 멀티 모듈의 개념, 사용하는 이유, 어떻게 구성하는지에 대해 알아보았다. 멀티 모듈이 무엇이고, 왜 사용할까? 1. 멀티 모듈이란? Java에서 모듈이란 패키지의 한 단계 위의 집합 leeeeeyeon-dev.tistory.com 본격적으로 개발을 시작하며 Controller나 Service 코드는 api 모듈에서 관리하고, Entity나 Repository 코드는 domain 모듈에서 관리하고 있다. 그러다보면 api 모듈에서 domain 모듈의 코드가 필연적으로 필요하고, 모듈 간 의존성을 주입해주어야 하는 일이 생긴다. 이번 포스트에서는 멀티 모듈 프로젝트에서 한 모듈에 다른..

[Tistory] Minicom으로 디바이스 장치 연결 (tty)

Minicom설치  sudo apt-get install minicom -y  연결포트 확인  dmesg | grep tty   minicom설정  Serail Device경로만 변경      참고https://velog.io/@wisdom_lee/%EC%9A%B0%EB%B6%84%ED%88%AC%EC%97%90%EC%84%9C-minicom%EC%9C%BC%EB%A1%9C-%EC%8B%9C%EB%A6%AC%EC%96%BC-%ED%86%B5%EC%8B%A0-%ED%95%98%EA%B8%B0 우분투에서 minicom으로 시리얼 통신 하기리눅스에서 minicom을 이용하여 시리얼 통신을 하는 과정velog.io

[Tistory] [velog] 정처기 실기 요약 [9] 소프트웨어 개발 보안 구축

https://velog.io/@dlsdk2526/%EC%A0%95%EC%B2%98%EA%B8%B0-%EC%8B%A4%EA%B8%B0-%EC%9A%94%EC%95%BD-9-%EC%86%8C%ED%94%84%ED%8A%B8%EC%9B%A8%EC%96%B4-%EA%B0%9C%EB%B0%9C-%EB%B3%B4%EC%95%88-%EA%B5%AC%EC%B6%95 정처기 실기 요약 [9] 소프트웨어 개발 보안 구축 SW 개발 보안의 3대 요소 기밀성(Confidentiality) : 인가되지 않은 개인 혹은 시스템 접근에 따른 정보 공개 및 노출을 차단하는 특성 무결성(Integrity) : 정당한 방법을 따르지 않고서는 데이터가 변경 velog.io 좋은 공부자료를 공유해주시는 분들 감사합니다. SW 개발 보안의..

[Tistory] [스프링 입문] 빌드하고 실행하기 (윈도우 기준)

hello-spring 폴더로 이동> gradlew.bat build그럼 성공 메시지가 뜬다. 이제 \build\libs에 이동하여 java -jar hello-spring-0.0.1-SNAPSHOT.jar를 입력하면 빌드가 완료된다. localhost:8080에서 볼 수 있으면 성공이다.  참고https://velog.io/@snowball9820/Spring-cmd%EC%97%90%EC%84%9C-%EB%B9%8C%EB%93%9C%ED%95%98%EA%B3%A0-%EC%8B%A4%ED%96%89%ED%95%98%EA%B8%B0%EC%9C%88%EB%8F%84%EC%9A%B0-%EA%B8%B0%EC%A4%80 김영한 강사님의 ‘스프링 입문 – 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술’을..

[Tistory] 소프트웨어 배포 전략

배포 전략이란? 서비스를 중지하지 않고 새로운 버전을 배포하기 위해 여러 전력들이 존재한다. 과거에는 수개월 또는 수년에 한번씩 서비스를 릴리즈 하였지만, 최근에는 마이크로 서비스 아키텍쳐와 같은 작은 단위의 서비스를 좀 더 자주 배포하는 방식으로 변화하고있다. 배포 전략 종류 롤링 배포(Rolling Update Deployment) 블루/그린 배포(Blue/Green Deployment) 카나리 배포(Canary Deployment) 1. 롤링 배포 (Rolling UpdateDeployment) 롤링 배포란 가동중인 여러대의 서버를 점진적으로 구버전에서 신버전으로 전환하며, 구버전 인스턴스를 제거하는 전략입니다. 장점 서비스 중단 없이 배포가 가능합니다. 많은 리소스가 필요하지 않으며 필요시에는 이..

[Tistory] 버전관리 도구(Version Control)란?

버전관리 도구란 동일한 소스 코드, 문서 등을 여러 버전으로 관리하는 것이다. 버전 관리 도구를 통해서 여러 개발자들과 협업을 할 수 있고 파일 변화를 시간에 따라 기록했다가 나중에 특정 시점의 버전으로 다시 돌릴 수 있다. 버전관리 도구하면 가장 먼저 생각나는것이 “Git”이다. 하지만 버전관리 도구에 대해서 공부하면서 다양한 방식의 버전관리가 있다는 것을 알게되었다. 1) 로컬형 버전관리 시스템(Local VCS) : 버전 관리 자료가 로컬 컴퓨터의 공유 폴더에 저장되어 관리한다. < 공유 폴더 방식이 돌아가는 방식> -> 개발자가 개발이 완료된 파일을 공유 폴더로 복사 -> 이 파일을 담당자가 파일을 자기 PC로 복사한 후 이상유무 확인 -> 오류가 발견되면 수정을 의뢰하고, 없다면 개발자들이 동작..