분류 전체보기692 [Docker] 도커의 환경변수 설정 이번 글에서는 도커에서 환경변수를 설정해주는 방법에 대하여 정리해보려 한다! 1. 환경변수 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 도커는 build-time 인수와 runtime 환경변수를 지원합니다. 1 - 1) 환경변수 환경변수는 Dockerfile 안에서 사용할 수가 있습니다. Dockerfile 내부의 'ENV' 옵션을 통해서 우선 환경변수를 선언한 후, 이후 "docker run"을 실행할 때 "--env"옵션 또는"--env-file"을 통해서 변수에 값을 설정할 수 있습니다. 다음과 같은 server.js 파일이 있다고 해봅시다. 도커 내부에서의 port번호를 조금 더 유동적으로 지정하고 싶은 상황입니다. ▶ server.js // 생략... app... DevOps/Docker 2022. 9. 15. [Docker] Volumes과 Bind Mounts 이번에 학습하게된 Volume과 Bind Mounts는 뭘랄까... 쉬운것 같으면서도? 기억할 옵션들이 많은 느낌이랄까?... 정리를 좀 해놔야 겠다... Docker 컨테이너(container)에 쓰여진 데이터는 기본적으로 컨테이너가 삭제될 때 함께 사라지게 됩니다. Docker에서 돌아가는 많은 애플리케이션이 컨테이너의 생명 주기와 관계없이 데이터를 영속적으로 저장을 해야하는 경우들이 빈번합니다. 또한, 컨테이너가 host의 file system이 상호작용을 해야하는 경우도 있습니다. 이렇게 Docker 컨테이너의 생명 주기와 관계없이 데이터를 영속적으로 저장할 수 있도록 Docker는 두가지 옵션을 제공합니다. 1) Docker 볼륨(volume) 2) 바인드 마운트(bind mount) 이번 포스.. DevOps/Docker 2022. 9. 14. [TIL] 일일 회고 2022/09/13 요즘 한 일 1. JPA 오류 해결하기 수정중이던 Issue Tracker에서 문제가 발생하는 부분이 있었다. 해당 부분을 수정하면서 JPA의 지연로딩에 대하여 다시한번 경각심을 가지게 되었다. https://blogshine.tistory.com/548 HTML 삽입 미리보기할 수 없는 소스 Issue 와 Comment 는 1:N의 관계이다. 따라서 Comment의 코드를 보면 다음과 같이 Lazy 로딩이 걸려있다. ▶ Comment @Getter @Enti.." data-og-host="blogshine.tistory.com" data-og-source-url="https://blogshine.tistory.com/548" data-og-url="https://blogshine.tistory.com/.. Life/회고록 2022. 9. 13. [서평] 자바 ORM 표준 JPA 프로그래밍 저의 돈으로 직접 사서 직접 완독해 본 후 써보는 후기입니다. 따라서 장점은 장점대로 칭찬할 것이며, 단점은 단점대로 언급할 것입니다. http://www.acornpub.co.kr/book/jpa-programmig 자바 ORM 표준 JPA 프로그래밍 JPA 기초 이론과 핵심 원리, 그리고 실무에 필요한 성능 최적화 방법까지 JPA에 대한 모든 것 www.acornpub.co.kr 2022/09/09 ~ 2022/09/12 (책의 대부분의 내용이 영한님의 인프런 강의에서 배웠던 내용이라, 복습이다 생각하면서 빠르게 읽고 이해만 하였습니다.) 1) 책의 표지 2) 단원별 구성 3) 내용 4) 읽은 소감 우선 저의 글의 앞부분만 보는 분들을 위해 먼저 간단히 3가지에 대해 답해보겠습니다. Q 이.. Life/Book Record 2022. 9. 13. [Spring] @Configuration 이란? 이번 글에서는 @Configuration을 사용하는 이점에 대하여 정리해볼까 한다. 1. @Configuration 이란? " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 Spring에서 Bean을 수동으로 등록하기 위해서는, 설정 class위에 @Configuration을 추가하고, @Bean을 사용해 수동으로 빈을 등록할 수 있다. 이때 메서드 이름으로 빈의 이름이 결정된다. 그러므로 중복된 빈 이름이 존재하지 않도록 주의해야 한다. 예를 들면 다음과 같을 것이다. @Configuration public class SomeConfig { @Bean public ShineResource shine() { return new ShineResource(); } } 일반적으로.. BackEnd/Spring 2022. 9. 12. [JPA] Open Session In View 더 깊게 사실 예전에 이미 OSIV에 대한 글을 작성한 적이 있다. https://blogshine.tistory.com/379 HTML 삽입 미리보기할 수 없" data-og-host="blogshine.tistory.com" data-og-source-url="https://blogshine.tistory.com/379" data-og-url="https://blogshine.tistory.com/379" data-og-image="https://scrap.kakaocdn.net/dn/lMCFs/hyPLg4W1Gs/Muf3gnc1ikTWyz5K0u0qDk/img.png?width=622&height=526&face=0_0_622_526,https://scrap.kakaocdn.net/dn/gux9D/hyPJW.. BackEnd/JPA 2022. 9. 11. [Docker] 외부에서 컨테이너로, 컨테이너에서 외부로 파일 복사하기 여지까지 미천한 나의 Docker의 실력으로 인해 컨테이너와 볼륨을 연결하지 않으면 파일 이동을 할 수 없는 줄 알았다... 지금이라도 이러한 내요을 알게 되어 다행이다! 1. 외부에서 컨테이너로, 컨테이너에서 외부로 파일 복사하기 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 우선 우리의 폴더 디렉터리를 살펴보자. 1 - 1) 외부에서 컨테이너 내부로 복사하기 우리의 실행중인 컨테이너로 dummy/test.txt 파일을 복사해보자! "CP" 명령을 통해 외부에서 내부로 복사시켰다. 명령이 수행되고 나면, 컨테이너 내부 /temp에 text.txt가 복사된 것을 볼 수 있다. 이번에는 반대로 해보자! 1 - 2) 컨테이너 내부에서 외부로 복사하기 우선 이전의 dummy/.. DevOps/Docker 2022. 9. 7. [JPA] Lazy 로딩으로 인한 JSON 반환 오류 (No serializer found for class org.hibernate.proxy.pojo.bytebuddy.ByteBuddyInterceptor and no properties discovered to create BeanSerializer) 1. 문제의 상황 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 Issue 와 Comment 는 1:N의 관계이다. 따라서 Comment의 코드를 보면 다음과 같이 Lazy 로딩이 걸려있다. ▶ Comment @Getter @Entity @EqualsAndHashCode(of = "id") @NoArgsConstructor(access = AccessLevel.PROTECTED) public class Comment extends BaseTimeEntity { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "comment_id") private Long id; @ManyToOne(fetch .. BackEnd/JPA 2022. 9. 7. [Docker] 도커의 Attached, Detached 컨테이너 1. Attached, Detached 컨테이너 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 보통 다음과 같이 cmd를 입력하면 해당 process는 background 모드로 실행되기 때문에 바로 터미널에 추가적인 입력이 가능합니다. docker start intelligent_austin 도커 컨테이너를 실행하는 명령이며, docker ps로 확인 시 실행 중임을 확인할 수 있다. 여기서 생각할점이 "start"명령어는 입력 후 터미널이 사용자의 입력을 block하지 않았다는 점입니다. 따라서 추가적인 "ps"명령을 입력할 수 있었죠! 이를 detached 모드라 부릅니다. 이와 달리 docker run 은 명령을 실행하면 바로 사용자의 입력을 block 하게 됩니.. DevOps/Docker 2022. 9. 7. [TIL] 일일 회고 2022/09/06 요즘 한 일 1. Spring Security 구조 공부 완성 최근 몇 주간 Spring Security의 구조와 원리를 파악하기 위해 여러 블로그의 글들과 공식문서를 참고하였다. 저번 주 주말까지 해서 간단하게나마 정리를 마무리할 수 있었다. https://blogshine.tistory.com/540 [Spring Security] AuthenticationProvider 본 글은 Spring Security docs 와 여러 블로그 들을 참고하고, 공부하면서 요약하였습니다. https://docs.spring.io/spring-security/reference/servlet/authentication/architecture.html#servlet-authenticatio.. blogshine.tis.. Life/회고록 2022. 9. 6. [Java] 동일성(identity)과 동등성(equality) 팀원들과 면접 스터디를 진행중인데, 한번쯤 정리하면 좋은 내용이라 생각되어 정리해본다. 1. 동일성(identity) 우선 다음 그림을 살펴보자. 변수 1은 객체1을 가리키고 있고, 변수2 와 변수3은 객체2를 가리키고 있다. 즉, 변수2 와 변수3은 동일한 객체를 가리키고 있으므로, 두 변수는 동일하다고 이야기할 수 있다. 그리고 해당 변수가 동일한지 == 연산자를 통해 판별할 수 있다. 참고로 Primitive 타입은 주소가 없으므로 == 연산자를 사용하였을 때 내용이 같으면 동일하다고 판단한다. 2. 동등성 (equality) 두 개의 객체가 같은 정보를 갖고 있는 경우 동등하다고 판단한다. 즉, 참조하고 있는 객체의 주소가 서로 다르더라도 내용만 같으면 두 변수는 동등하다고 말할 수 있다. Jav.. BackEnd/Java 2022. 9. 6. [Docker] 도커 이미지 레이어 (Docker Image Layer) 도커를 공부해보고 있는데, 레이어라는 개념이 좀 신기해서 한번 정리 겸 글을 작성해본다. 1. Docker Imager Layer? Docke 이미지는 Dockerfile 로 만들어진 여러 레이어로 이루어져 있고 각 레이어는 읽기만 가능(Read-only)합니다. 그림으로 보면 다음과 같죠! 위의 그림에서는 3개의 층으로 구성되어 있는 stack 구조로 도커 이미지를 그려놨다. 이때 각각의 층을 Docker에서는 레이어(layer)라고 부르며 특별히 이미지를 구성하고 있는 레이어를 이미지 레이어라고 부른다. 즉 위의 이미지는 서로 다른 3개의 이미지 레이어로 구성되어 있다고 볼 수 있다. Dockerfile의 명령들을 하나 하나 실행할 때마다, 레이어가 생기는 구조이고, 이는 그래프 드라이버를 통해 합쳐.. DevOps/Docker 2022. 9. 5. 이전 1 ··· 10 11 12 13 14 15 16 ··· 58 다음