전체 글 202

[Docker] PHP Laravel 9.x 설치하기 feat.window 10

윈도우에 Docker 를 사용하여 Laravel 9.x 컨테이너를 설치하려고했다. 언제나 그렇듯 한번에 되지않는다. Window10 환경이었고 Docker Desktop 은 이미 설치되어있다는 가정하에 진행한다. 아 물론 최신버전으로 되있어야 잘된다. 이 점은 유의하자! curl -s "https://laravel.build/example-app?with=mysql,redis" | bash cmd 창에서 프로젝트 생성하고싶은곳에 가서 저렇게 'example-app' 에 내가 원하는 이름 기재하고 엔터치면 프로젝트가 생성됨과 동시에 Laravel docker image 가 생성이 되야한다. 참고로 위 명령어 git bash 에서 실행하면 opt 뭐시기 에러 뜨면서 안되니까 CMD 창에서 실행하는게 정신건강..

IT/Docker 2023.10.24

[Next.js] 렌더링 된 화면에서 줄바꿈이 되지않을때 ~!

HTML5, CSS 단이었다면 되게 간단히 생각했을법도 한데 괜히 Next.js 가 엮여있어서 생각이 안났다는 핑계를 대본다 .. 여튼 포트폴리오를 만들고 있는데 굳이 DB 까지 연동할 필요는 없을것 같아서 그냥 component 각 폴더에 ___data.tsx 형식으로 데이터를 다 넣어줘서 불러오는 식으로 꾸며주고있다. #/component/Project/projectData.tsx import { Project } from "@/types/project"; const projectData: Project[] = [ { id: 1, title: "뱀팔이", paragraph: `국내 희귀애완동물 샵 및 병원을 한곳에서 볼 수 있는 뱀팔이 웹 사이트 제작 한칸띄어쓰기를 어떻게 넣을수 있을까? 왜 안될까?..

IT/React.js 2023.10.18

Git 원격 저장소 branch 다중 삭제 명령어 정리

git 로컬 저장소에서 git bash 와 같은 커맨드 창 키고 ~ git 원격 origin 저장소 branch list 확인 git ls-remote --heads origin 결과값 예시 다중 브랜치 삭제 명령어 git push origin [브랜치명1] [브랜치명2] ex) git push origin --delete refs/heads/dev_ltw_7144 refs/heads/dev_ltw_7204 혹시 브랜치에 특수문자 들어갔을경우 따옴표로 감싸서 진행 git push origin --delete "refs/heads/dev_ltw_(아힝흥헹힝)" 처음에 아래와 같이 진행하면 삭제 될줄알았으나 진행 안됐음 앞에 refs/heds/[브랜치명] 붙이니까 정상적으로 삭제됌 git push origi..

IT/잡다구리 2023.09.21

[PHP] 보육정보공개API 연동 작업 후기 (시군구코드 mysql INSERT 문 첨부) , TRUNCATE, BULKINSERT, CRONTAB

사내에서 보유중인 데이터와 , 공개API 를 매칭하는 작업을 하였다. 아래 링크에서 API 에 대한 설명 및 메뉴얼을 볼 수 있다. https://info.childcare.go.kr/info/oais/introduction/Intro.jsp 공개 API 개요 < 보육정보공개 API 소개 < 보육정보공개 API < 어린이집정보공개포털 ※ API[Application Program Interface] : 인터넷 이용자가 일방적으로 웹 검색 결과 및 사용자인터페이스(UI) 등을 제공받는 데 그치지 않고 직접 응용 프로그램과 서비스를 개발할 수 있도록 공개된 info.childcare.go.kr 회원가입은 필수이며, 개발계정 신청 및 심의가 있고 심의는 넉넉하게 하루정도 걸린다고 보면된다. 처음에 테스트 키로..

IT/잡다구리 2023.07.22

[mariaDB] 7~8초 걸리던 select 쿼리 빠르게 하기

실 서비스중인 모바일 페이지가 있는데, 특정 페이지를 진입하면 로딩이 너무 느려진다고 클레임이 들어와서 확인하게 된 쿼리이다. (정말 더럽게 짜여져있는 레거시 페이지라 하나 하나 지우면서 분석했다. 물론 내가 만든건 아니다.) 아래와 같은 쿼리였는데 JOIN 도 없고 단순히 테이블 한곳에서 Select 해서 가져온다. 쿼리에서 대충 짐작 할 수 있다시피 , 그냥 단순히 특정 회원에게 알림이 쌓이는 테이블이고, read_date 에 읽은 날짜가 기입되고, 읽기전에는 0000-00-00 식으로 기본으로 박혀있다. SELECT COUNT(*) FROM TABLE WHERE del_yn = 0 #사용여부 AND user_id = "111111" #회원 고유 ID AND read_date = "0000-00-00..

IT/SQL 2023.06.23

[AWS RDS] time_zone 설정하는 방법 (Feat. 파라미터 그룹)

db 시간이 9시간 느리다. time_zone 이 달라서 그렇다. 아래 처럼 시간을 찍어보면 확인 할 수 있었다. select now(); 그냥 일반 리눅스 세팅 환경이었으면 db root 로 들어가서 SET GLOBAL 로 시간 고정하거나 타임존 바꾸면 그만이겠지만 AWS RDS 에서는 그렇게 되있지않다. 우선 RDS -> 데이터베이스 -> 사용중인 db -> 구성 탭 에서 내가 사용중인 파라미터 그룹을 확인 한다. 해당 이름에 맞는 파라미터 그룹을 찾아서 진입해서 time_zone 을 검색해본다. 지금이야 이미 추가해놔서 저렇게 보이는데 이름, 값, 허용된 값 등등 이렇게 쭉 나오고있는데 나는 "값" 부분이 그냥 비워져있었다 그래서 "파라미터 편집" 에서 Asia/Seoul 로 선택하고 저장을 해주었..

IT/AWS 2023.06.23

[AWS] RDS mariaDB 인스턴스 복사 후 이상 증상 해결 방법 (INSERT 문제)

RDS 인스턴스 복사후 이상증상은 아주 여러가지가 있을 수 있지만 내 경우엔 INSERT 가 제대로 되지않는 문제가 있었다. 결국 RDS 파라미터 그룹 문제였다. 왜 이런일이 발생하였는지 , 원인 및 분석한 부분을 쭉 포스팅 하려고한다. 현재 내가 관리하는 AWS RDS 에 두개의 DB 인스턴스가 가동중에 있다. 1. 실 DB 2. 테스트 DB 실DB랑 테스트 DB랑 서로 데이터 갭 차이가 너무 많이나서 동기화를 하고자하였다. 1 번의 스냅샷을 2번으로 덮어씌우고싶었으나 , 덮어씌우는 방법은 안되는듯하고 1번의 스냅샷을 테스트 DB_1 라고 인스턴스 명을 겹치지않게 조정하여 진행하였고 기존에 있던 2 번을 테스트 DB_2 로 바꾸고, 방금 만들어진 테스트 DB_1 를 다시 테스트 DB 로 바꿔서 굳이 개..

IT/AWS 2023.06.13

[Next.js] middleware.ts 추가시 에러났을때 해결 방법

Next.js 에서 middleware.ts 파일을 추가하였는데 아래와 같은 에러가 발생 Module parse failed: Identifier 'NextResponse' has already been declared 위치는 그냥 / 에 넣어둠 api 폴더에도 넣어보고 별의별 난리를 다 쳐봤으나 절대 안됌 chatGPT 에 물어봐도 자꾸 api 폴더에 넣으라는 뚱딴지 같은 소리만 하고있음 결론은 Next 버전 다운그레이드 하고 해결. 1. node_modules 폴더 삭제 2. package.json 에 있는 next 13.4.3 으로 변경 (기존에 13.4.4 였음) 3. 다시 npm install 이렇게 하니 정상적으로 잘 작동 되는것 확인하였다.

IT/React.js 2023.06.01

[Jenkins] 기존 등록된 서버 IP 변경시 배포 오류 해결방법

AWS 인스턴스 사양을 업그레이드 하면서 IP 주소가 바뀌어버려가지고 , 기존에 젠킨스에 자동배포 잘되던게 정상적으로 되지않는 문제가 발생하였다. 탄력적 IP 로 고정 되있을줄 알았는데 제대로 확인하지 않은 탓이다. 실서비스중인 AWS EC2 인스턴스가 3개가 있는데 하나만 탄력 IP 로 등록되있고 나머지 2개는 안되있더라 -_- ;; 젠킨스의 Console Output 중 발췌 2 대의 서버에선 정상적으로 처리가 되었는데 , 나머지 1대에서 배포에 문제가 생겨 UNSTABLE 이 발생 바뀐 IP 로 바꿔주자 Jenkins > Dashboard > Jenkins 관리 > Configure System 에 진입해서 아래로 쭈욱 내리면 내 젠킨스를 이용하여 배포하는 서버들 ssh 정보들이 쭈욱 있는데 거기서..

IT/잡다구리 2023.05.19

[Docker] apache-php 컨테이너에서 https 연결하기 feat.Let's Encrypt

환경 : 호스트 Centos 7 , Docker 컨테이너 (apache-php) , let's encrypt (SSL) let's encrypt 설치는 이미 잘 정리되어있는 블로그 글들이 많아서 굳이 기재하지 않겠습니다. 제가 포스팅했던 적도 있어서 링크만 걸어놓을게요 제목은 centos8 이라 되있지만 7에서도 잘됩니다. https://bug41.tistory.com/entry/SSL-Lets-Encrypt-SSL-%EC%9D%B8%EC%A6%9D%EC%84%9C-%EC%84%A4%EC%B9%98-Centos8-crontab [SSL] Let's Encrypt SSL 인증서 설치 Centos8 , crontab 센토스8 에서 홈페이지 https 를 위한 Let's Encrypt 설치 방법 간단하게 포스..

IT/Docker 2023.04.07
300x250