전체 글

모르는 내용 및 아는 내용 모두 꼼꼼히 복습하여 익숙해지는 그 날까지 꾸준히 공부하겠습니다.
Linux

[Linux] nohup 사용법 및 표준 출력과 에러 로그 분리하 / AWS nohup으로 백그라운드 실행하기 &

유튜브 메타코딩님의 강의를 듣고 중요한 내용을 기록하고자 합니다. (좋은 강의 감사합니다. 메타코딩님) https://youtu.be/bi02s9Rs1Zw?si=XJsbYt79DQitZv6l nohup 명령어란 리눅스에서 프로세스를 실행한 터미널의 세션 연결이 끊어지더라도 지속적으로 동작할 수 있게 해 줍니다. nohup 명령어로 프로세르를 실행시키면, 자동적으로 로그를 남겨줍니다. (같은 파일 위치에 nohup.out에 기록됨) 만약에 로그를 다른 파일에 기록하고 싶다면 리다이렉션을 이용하여 로그 기록 위치를 변경할 수 있습니다. # nohup install sudo apt update sudo apt install nohup # nohup 명령어 사용 nohup java -jar *.jar > myl..

Spring Framework/Spring

[Spring] 스프링 파일, 이미지 업로드 / 인스타 이미지 업로드 및 해시태그 파싱하기 - MultipartFile, File

스프링을 이용해 파일 업로드하는 방법에 대해 정리하고자 합니다. 스프링 코드와 html 코드를 작성하면서 설명하겠습니다. Spring Code - 파일 업로드 처리 @Value("${file.path}") private String fileRealPath; public void imageUpload(ImageRequestDTO.ImageUploadDTO request, Long userId) throws IOException{ UUID uuid = UUID.randomUUID(); MultipartFile file = request.getFile(); String uuidFilename = uuid + "_" + file.getOriginalFilename(); Path filePath = Paths.g..

Spring Framework/Thymeleaf

[Thymeleaf] 타임리프 @{..}, |리터럴| 경로 설정, form th:action, img th:src 설정 문법

Thymeleaf를 통해 컨트롤러와 데이터를 주고받고 처리하는 과정을 공부하면서 th:action, th:src, thymeleaf 문법을 통해 객체 그래프 탐색 방법에 대해 정리하고자 합니다. html 문서를 작성하면서 동적 프로그래밍이 필요할 때가 있습니다. 이럴 때 타임리프 문법을 통해 쉽게 해결할 수 있습니다. form form 태그를 통해 컨트롤러에게 데이터 셋을 전달하여 데이터 처리를 요청할 수 있습니다. th:action ✔️ form data를 보낼 url를 설정합니다. ✔️ 서버 Controller에게 데이터 처리 요청을 합니다. @{URL 링크} ✔️ @{URL 링크} : 타임리프는 URL 링크를 @{...} 에 담아서 전달합니다. ex1) th:href = "@{/css/style/...

Spring Framework/JPA

[JPA] JPA 영속성 전이란, CASCADE.ALL 사용법, 연관관계 편의 메소드란

영속성 전이란 : CASCADE - 특정 엔티티를 영속 상태로 만들 때 연관된 엔티티도 함께 영속 상태로 만들어 주는 것을 의미합니다. 위의 예시로 Parent와 Child는 1:N 관계로 매핑되어 있습니다. Child 엔티티는 한 Parent와 연결되어 있습니다. 이때 Parent 엔티티를 저장할 때 연관된 자식 엔티티도 함께 저장하는 것을 영속성 전이라 합니다. 영속성 전이 : CASCADE 주의 영속성 전이는 연관관계를 매핑하는 것과 관련이 없습니다. 엔티티를 영속화할 때 연관된 엔티티도 함께 영속화하는 편리한 기능만 제공하는 것입니다. CASCADE 종류 ALL : 모두 적용 PERSIST : 영속 REMOVE : 삭제 MERGE : 병합 REFRESH : 리프레쉬 DETACH : DETACH 모..

Infra/Docker

Docker로 Spring Boot, Vue, MySQL 배포 및 연동하기

사전 작업 (배포에 필요한 것들)springboot 프로젝트Vue.js 프로젝트Docker Hub 회원가입로컬 PC에 Docker 설치제가 작성한 도커 배포하는 방법 보시고 시간 절약 하세요.. ㅠㅜㅠ1-1. Springboot 프로젝트 Dockerfile 설정하기// JAVA 11 기준FROM openjdk:11ARG JAR_FILE=./build/libs/*.jarCOPY ${JAR_FILE} app.jarENTRYPOINT ["java","-jar","/app.jar"] application.yml (데이터베이스 설정 부분 주목)# databasespring: datasource: driver-class-name: com.mysql.cj.jdbc.Driver # spring data jpa..

Infra/Docker

[Docker] 도커 허브 연결하기, 도커 컴포즈 docker-compose 파일 작성하기

도커 허브란 ⭐ 도커 제작사에서 운영하는 공식 도커 레지스티리 도커 레지스트리 도커 이미지를 저장하고 관리하는 중앙 저장소로서 동작하는 서버 도커 이미지를 업로드, 다운로드, 검색, 삭제 등의 작업을 수행 ⇒ 도커 이미지를 공유하고 배포하기 위해 사용 레포지토리 도커 이미지의 집합을 나타내는 공간 이미지의 다양한 버전을 관리하고 구분 태그 도커 이미지의 버전을 식별하기 위한 라벨 이미지의 특정 버전을 구분하고 관리하는 데 사용 레지스트리_주소(도커 허브는 ID)/레포지토리_이름:버전 이미지에 태그를 부여해 복제하는 명령어 docker tag [기존_이미지_이름] [레지스트리_주소]/[레포지토리_이름]:[태그] 명령어 실행 후 기존 이미지와 태그가 부여된 이미지가 둘 다 존재 이미지를 업로드하는 명령어 ⭐..

Infra/Docker

[Docker] 도커 기본 명령어, 명령어 정리

도커 명령어 컨테이너를 다루는 명령어는 ‘docker’ 명령어로 시작 도커 명령어의 기본 형태 docker 커맨드(상위/하위) (옵션) 대상(이미지) (명령어) (인자) 커맨드(상위/하위) 무엇을, 어떻게에 해당하는 부분 커맨드는 상위 커맨드(무엇을)와 하위 커맨드(어떻게)로 구성 docker container start penguin 옵션 커맨드에 세세한 설정을 지정하는 용도 커맨드의 실행 방법 또는 커맨드에 전달할 값을 지정 -d, - - name penguin, -dit 대상(이미지) 커맨드와 달리 구체적인 이름을 지정 docker container start [옵션] penguin 명령어 인자 대상에 전달할 명령어와 인자 값을 전달 문자 코드 또는 포트 번호 등을 전달 가능 docker run -..

Infra/Docker

Docker란 무엇인가? 도커 장점과 컨테이너, 도커 엔진의 역할 이해하기

Docker란 ⭐컨테이너 개념을 도입해서 데이터/프로그램을 격리시키는 기능을 제공하는 SW컨테이너 환경을 손쉽게 만들 수 있는 기능과 각 컨테이너를 손쉽게 동작할 수 있는 도커 엔진 제공 Linux 컨테이너와 VM크기 및 패키징컨테이너 : 메가바이트 단위의 크기, 애플리케이션과 그 실행에 필요한 최소한의 파일만 포함. 종종 단일 기능을 수행하는 마이크로서비스를 컨테이너에 패키징함VM : 기가바이트 단위의 크기, 자체 운영 체제를 포함함. 여러 리소스 집약적인 작업을 동시에 수행할 수 있으며, 전체 서버, OS, 데스크탑, 데이터베이스, 네트워크 등을 추상화, 분할, 복제 에뮬레이션함이동성 및 확장성컨테이너 : 경화 속성과 공유 운영 체제로 인해 여러 환경 간에 쉽게 이동할 수 있으며, 확장이 상대적으로 ..

kylo
오늘도 열심히 - BE