- [ Study/SSR ][SSR] 썸네일 미리보기 기능2024-09-18 20:41:16원래 화면이다. 여기서 제목 input 태그 밑에 썸네일을 추가하면 미리보기를 할 수 있고 저장 후 DB에 썸네일의 경로를 저장 및 로컬에도 이미지를 저장할 것이다. 그리고 게시글 불러 올 때 썸네일도 같이 출력되게 끔 만들려고 한다. 일단 input 폼을 조금 수정했다. WRITE TITLE THUMBNAIL --> CANCEL WRITE 그리고 이미지 들어갈 태그에 css를 먹여놨다. 처음부터 img 태그가 보이면 이미지가 없기 때문에 엑박이 뜬다. 그래서 처음엔 display를 none으로 ..
- [ Study/SSR ][SSR] SimpleMDE 적용하기2024-09-18 20:36:10이전에 마크다운 라이브러리를 2번 정도 사용했었는데 2번 다 방법이 달랐다. 첫번째는 수작업으로 textarea에 마크다운 문법만 붙여넣으면 오른쪽에 만들어둔 div에 marked 라이브러리 붙여서 실시간으로 마크다운 파싱해서 보여줬었고.. 두번째는 Toast UI Editor를 적용시켰는데 커스터마이징 할 수 있는 기능들은 SSR에서는 지원이 안되길래 이번에 SimpleMDE로 갈아탔다.1. SimpleMDE CDN 어디다 적용시켜야 하는지 모른다면 검색해보자.. 나는 thymeleaf에서 제공하는 layout 라이브러리로 공동 레이아웃을 따로 관리하고 있기 때문에 head.html에 적용시켜놨다.2. PrismJS CDN얘는 소스코드를 꾸며주는 역할을 한다. 보통 티스토리 블로그에서 문법 강조시키는...
- [ Network/Raspberry Pi 5 ][Raspberry Pi 5] 라즈베리파이5 SSL 인증서 발급2024-09-14 00:49:04이전에 한번 포스팅 했던거라 짤막하다.이거보고 적용한다면 도움이 안될 듯 하다. apt updateapt install certbot python3-certbot-apache -ycertbot --apache -d ${도메인 주소 } --email ${이메일 주소 } 나는 테스트용 도메인이라 인증서 자동 갱신은 안해줬다. 그리고 SSL 발급하는 과정에서 에러가 발생하는 경우가 종종있어서 그럴 경우엔 알아서 잘 해결하자. 이후 도메인으로 접속했을 때 Debian 기본 페이지가 출력되는 경우가 있었는데 SSL 인증서 발급 후 SSL 설정 파일에서 Docker Container까지 연결시켜주는 Reverse Proxy 설정 부분을 추가하지 않았기 때문이고 아래 포스팅을 이어서 작업하면 된다. 근데 Rocky ..
- [ Study/Troubleshooting ][Troubleshooting] SSL 인증서 및 도메인 발급 이후 HTTP 기본 페이지로 나오는 문제2024-09-14 00:45:51공인 IP:포트로 접근했을 때는 잘 됐었다. 그러나 SSL 인증서 발급하고나서부터 기본 페이지가 나오는 게 아닌가.. 처음엔 설정 파일에서 documentRoot 경로를 dockerfile에서 작성했던 경로로 똑같이 바꾸는 바보 짓도 했었는데.. 생각해보니 공인 IP:Port로는 잘나오고 SSL 인증서 발급하자마자 안됐다? 프록시 쪽 문제라는 생각이 들었고 이 전에 Rocky Linux에서 SSL 인증서 발급받을 때 어떻게 했는지 찾아보니 아래 문구가 더 적혀져 있었다. ProxyPreserveHost OnProxyPass / ${라즈베리파이 IP 주소 }:${컨테이너 포트 }/ProxyPassReverse / ${라즈베리파이 IP 주소 }:${컨테이너 포트 }/ 이 부분을 추가하자. 파일은 /etc/a..
- [ Network/Raspberry Pi 5 ][Raspberry Pi 5] 라즈베리파이5 Docker 정적 페이지 배포2024-09-13 23:02:19사실 정적 페이지는 Docker 사용하지말고 github page나 netlify로 배포하는 게 낫다. 뭣하러 정적 페이지 배포할려고 서버를.. 난 라즈베리파이를 24시간 내내 돌리고 있기 때문에 궁금해서 해봤다..1. 배포 환경RaspberryPI5(Debian)2. 선수 작업1. docker run ~ 할 때 포트 지정해주는 -p 옵션 뒤에 오는 포트를 포트 포워딩 시켜줘야한다. 2. VS Code 등으로 작업한 정적 페이지가 담긴 폴더가 있어야 한다. 3. 호스트 PC에서 정적 페이지가 담긴 폴더를 라즈베리파이 내부의 디렉터리에 옮겨야 하기 때문에 FTP가 가능해야 한다.전송 실패가 있는 이유는 user5221한테 권한 안줘서 그렇다. 이후 권한주고 파일 넘겼으니 됐다. 4. 때문에 SSH 접근이 ..
- [ Network/Raspberry Pi 5 ][Raspberry Pi 5] 라즈베리파이5 SSH 포트 변경 및 외부 접속2024-09-12 21:40:38선수 작업1. SD 카드에 라즈베리파이 이미져 설치2. 라즈베리파이랑 WIFI 공유기 LAN선 연결3. 전원 어댑터 연결4. …1. SSH 포트 변경일단 putty 같은 SSH 원격 접속 프로그램으로 라즈베리파이 내부에 접속한다. ssh 관련 설정 파일을 건드리자. 왜 건드리느냐. ssh 접속 기본 포트인 22는 기본적으로 사용되는 포트이기 때문에 보안에 취약하다. 바꿔주자. jy@raspberrypi:~ $ sudo nano /etc/ssh/sshd_config 나는 이미 수정을 해놔서 주석 처리가 없는데 원래 처음 들어오면 주석 처리가 되어있다. 앞에 ‘#’을 지우고 원하는 포트 번호로 수정해주자. nano로 작업하는거라면 ‘Ctrl + O’로 저장 후 ‘Ctrl + X’로 빠져나올 수 있다. 그리..
- [ Network/Raspberry Pi 5 ][Raspberry Pi 5] 라즈베리파이5 Docker 설치2024-09-11 22:41:381. Docker GPG Key 추가jy@raspberrypi:~ $ curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg 👩🏻🏫 GPG Key(GPG Key(GNU Privacy Guard)데이터 암호화 서명패키지 출처와 무결성을 확인하기 위해 사용도커 저장소에서 패키지를 다운로드 할 때 GPG Key가 없으면 신뢰할 수 없는 출처에서 왔다 생각하여 설치를 거부할 수도 있고 에러가 발생할 수 있다. 👩🏻🏫 Rocky Linux에서 Docker 설치할 때는 GPG Key가 필요 없었는데 왜 Debian 계열에서는 GPG..
- [ Network/Windows ][Network | Windows] IPv4 주소가 공인 IP로 나올 때2024-09-07 23:11:02💡 참고 KT GiGA fiber(인터넷 모뎀)와 KT GiGA WiFi Wave2(공유기)를 사용한다. 별 건 아니지만 포스팅하는 이유는 IPv4를 다시 사설 IP로 바꾸는 과정에서 네트워크 공부도 된 것 같아서 간략하게 남기기 위함이다. 일단 컴퓨터(windows 운영체제)에서 cmd - ipconfig 했을 때 나오는 IPv4의 주소가 공인 IP였다. 집에서 배포한다고 포트포워딩 할 때 ipconfig - IPv4 주소는 항상 C 클래스 대역의 사설 IP로 잡혀져 있었는데 이번엔 왜 공인 IP로 잡혀져 있었을까? 생각해보니 원인은 간단했다. 저번 주에 라즈베리파이 세팅하다가 뭐 때문에 건드렸는지는 잘 모르겠는데 컴퓨터 본체에 있는 LAN선을 공유기가 아닌 KT GiGA fiber라는 제품에 연결..
- [ Network/Raspberry Pi 5 ][Raspberry Pi 5] 라즈베리파이5 NAS 구축(2) - SSH 접속(2)2024-09-03 23:09:22굳이 (2) 안붙이고 SSH 접속 포스트에 달아서 쓰면 되는데 글 하나라도 더 올릴려고 그냥.. 따로 뺐다. 원룸에서 본격적으로 NAS 구축할려고 기본 세팅 마치고 SSH 접속 위해 ping을 날리는데 안되는 것이다. 이미져 설정 시 hostname을 잘못 설정했나? 아니면 네트워크 연결이 안됐나? 싶어서 방법을 찾다가 nmap이라는 걸 알게됐다. IP 주소를 스캔할 수 있다. 설치하자. https://nmap.org/download.html#windows Download the Free Nmap Security Scanner for Linux/Mac/WindowsDownload Reference Guide Book Docs Zenmap GUI In the Movies Older versions ..
- [ Network/Raspberry Pi 5 ][Raspberry Pi 5] 라즈베리파이5 NAS 구축(2) - SSH 접속2024-09-01 18:41:19라즈베리파이 본체에 전원 어댑터와 LAN선 연결 후 진행한다.1. SSH 빈 파일 생성 /boot 경로에 SSH 이름을 가진 빈 파일을 생성한다. 처음에 빈 텍스트 파일로 만들어놓고 확장자만 변경해주면 되는데 나는 이름 변경 할 때 txt가 안보였다.그럴 때는 ‘보기 - 표시 - 파일 확장명’을 클릭하면 된다.2. SSH 접속SSH 접속 전에 cmd로 핑을 날려본다.(다들 알겠지만 네트워크 연결해놓고 핑 날려야한다) 저기 있는 raspberrypi.local은 이미져 파일 생성 시 커스터마이징 부분에서 작성했던 호스트 네임을 뜻한다. 핑을 날렸을 때 위와 같이 잘 받아지면 putty와 같은 SSH 서버 원격 접속 프로그램을 통해 접속이 가능하다. 참고 레퍼런스https://dalseobi.tisto..
- [ Network/Raspberry Pi 5 ][Raspberry Pi 5] 라즈베리파이5 NAS 구축(1) - 기본 세팅2024-09-01 18:39:101. 라즈베리파이 이미져 다운로드https://www.raspberrypi.com/software/이미지를 다운받을 호스트 PC의 운영체제를 선택한다.나는 windows에서 세팅할거라 windows로 다운로드 받았다.2. 라즈베리파이 이미져 실행 SD 카드에 설치할 이미지의 구성 장치, 운영체제, 저장소를 선택하면 된다. 장치 선택 - 세팅할 라즈베리파이 모델 선택(나는 라즈베리파이5를 구매했기 때문에 라즈베리파이5를 선택했다)운영체제 선택 - 라즈비안 OS(대부분 라즈베리파이에서 제공하는 OS를 사용하시는 것 같았다. 취향 껏 선택하길..)저장소 선택 - D 드라이브(기본적으로 선택되어 있다) 선택 후 ‘다음’ 버튼을 누르면 커스터마이징을 설정할 수 있는 창이 뜨고 무선 연결 등 설정해야하는 부분이 ..
- [ Study/Troubleshooting ][Troubleshooting] 주소 [localhost]와(과) 포트 [8005]에, 서버 셧다운 소켓을 생성하지 못했습니다. (base 포트 [8005], offset [0])java.net.BindException: Address already in use: JVM_Bind2024-08-08 09:50:46이슈 발생 상황은 Windows에서 Tomcat을 돌릴 때(startup.bat을 실행했을 때) cmd 창이 바로 꺼지며 실행되지 않는 상황이였다. 에러 로그는 아래와 같다.08-Aug-2024 09:33:10.755 심각 [main] org.apache.catalina.core.StandardServer.await 주소 [localhost]와(과) 포트 [8005]에, 서버 셧다운 소켓을 생성하지 못했습니다. (base 포트 [8005], offset [0]) java.net.BindException: Address already in use: JVM_Bind at java.net.DualStackPlainSocketImpl.bind0(Native Method) at ja..