반응형

전체 글 232

[원티드 백엔드 챌린지] Docker -2

도커 기본 정리 Port Forwading & Volume mount 웹브라우저를 통해 http://example.com:80/index.html을 접근하게 되면, 서버 host의 80포트로 접근을 하게 된다. 그리고 컨테이너의 80포트와 연결이되고 웹서버를 통해 index.html을 실행하게 된다. Container LifeCycle DockerFile 동작방식 도커파일을 build 하게되면 이미지를 얻을수있고 이를 Docker Hub로 Pull / Push 할수있다. 그리고 이미지를 Run하여 컨테이너를 생성한다. Docker Image upload Docker Hub Docker hub에 이미지를 등록하려면 규칙을 준수해야 한다. [Docker hub 사용자명]/[이미지명]:[태그명] 태그방법 1...

Studying💨 2023.08.06

[원티드 백엔드 챌린지] Docker - 1

[ 도커 설치 ] Get Docker docs.docker.com 2023.08.03 - [Deploy🎁/Docker + K8s] - Docker 란? Docker 란? Docker 도커는 컨테이너 기반 가상화 도구이다. 애플리케이션을 컨테이너라는 단위로 격리하고 실행하고 배포하는 기술을 말한다. 그럼 여기서 말하는 컨테이너는 무엇일까? Container 컨테이너는 togll.tistory.com 도커 소개 컨테이너 기반의 특징 컨테이너는 리눅스 커널의 기능을 사용하여 만들어진다. - chroot : 파일 시스템을 격리한다. - namespace : 프로세스를 격리한다. - cgroup : 하드웨어 자원을 격리한다. 프로세스 단위의 격리환경을 가지게 된다. Docker GUI Docker Desktop ..

Studying💨 2023.08.06

CodeStates - Section04 회고 블로깅

어느새 section04까지 달리게 되었다! 부트캠프를 시작한지 4개월이 지난 시점에서 회고를 작성해 보려고 한다. 1. 목표 상기 - 경제적으로 안정되고 내가 하는일이 만족스러운 개발자 - 주어진 상황에 최선을 다하는 사람이 되자. - 리더쉽 있고, 상대방을 존중할줄 아는 사람이 되자. section04가 끝난 지금부터는 프로젝트를 진행하게 된다. 지금까지는 방에서 나혼자 공부하는것이 다였지만, 이제 사람들과 어울려서 무언가를 만들어 간다는것이 기대되기도 하고 걱정도 되는것같다. 프로젝트를 진행하면서 내 성격상 먼저 리더의 역할을 자원해서 하지는 않겠지만, 상황이 생긴다면 도전해 볼 의향이 있다. 어떤식으로 작업을 이끌어 나가야할지, 또한 나 혼자만을 컨트롤 하는것이 아닌 다른 누군가와 함께 공동의 목..

Studying💨 2023.08.05

Docker 란?

Docker 도커는 컨테이너 기반 가상화 도구이다. 애플리케이션을 컨테이너라는 단위로 격리하고 실행하고 배포하는 기술을 말한다. 그럼 여기서 말하는 컨테이너는 무엇일까? Container 컨테이너는 가상화 기술중 한가지이다. 호스트는 운영체제 위에 여러개의 격리된 환경을 생성하고 각각의 컨테이너 안에서 애플리케이션을 실행한다. 기존의 하이퍼바이저 기반의 가상화 기술은 가상머신(vm)을 생성하고 구동하는방식으로 작동했다. 왼쪽그림을 보면 hypervisor 위에 또다른 OS를 할당하고, 그 OS위에서 동작하게 된다. Hypervisor 위에서 동작하고 있는 VM들은 각각을 컴퓨터로 생각하면 된다. 즉, OS설치부터 시작해야 된다는 의미이다. 하지만 컨테이너를 사용하게 되면 OS를 할당할 필요가 없어지고, ..

Deploy🎁 2023.08.03

Tomcat server [] error

error A context path must either be an empty string or start with a '/' and do not end with a '/'. The path [/] does not meet these criteria and has been changed to [] tomcat 서버를 구동시에 다음과 같은 에러 warning 메세지가 발생하였다. 해결 tomcat 버전에 따른 context path에 제약사항이 생겨서 발생하는 문제이다. 에러메세지의 내용은 "context path에 빈 문자열을 사용하거나, "/"로 시작은 하지만 "/"로 끝나지 않은 경로를 써야한다." 는 내용으로, 이 경우에 다음과 같이 해결하였다. tomcat폴더 > conf > server.xml..

Error Logs🐾 2023.07.31

백준 초보자 기본 설정

알고리즘 문제풀이 사이트 개발자 취업을 준비하고 있는 사람이나 컴퓨터공학과 학부생 이라면 누구든지 알고리즘문제를 접하게 된다. 특히 기업채용에서도 코딩테스트를 기본적으로 보는 회사들이 많아지면서 알고리즘 문제 풀이에 대한 관심이 증가했다. 하지만 한번도 코딩테스트를 접해보지 못해본 사람은 친절하지 않은 제출, 채점 방식에 금방 어렵다고 느끼게된다. 나도 처음 백준 사이트에서 문제를 풀때 전체문제를 누르고 하나씩 풀어나가다가 막히게 된 사람중 한명이였다. 그래서 내가 어려웠던 부분을 공유해보려고 한다. [백준 사이트] Baekjoon Online Judge Baekjoon Online Judge 프로그래밍 문제를 풀고 온라인으로 채점받을 수 있는 곳입니다. www.acmicpc.net 기본 세팅 Solve..

Algorithm🥇 2023.07.29

CD(Continuous Deployment)

CD ? Continuous Deployment, 지속적 배포는 애플리케이션 개발 및 배포 과정에서 사용되는 방식이다. 코드의 변경이 발생했을때, 자동적으로 애플리케이션을 빌드하고 테스트하여 운영환경에 배포한다. 지속적 배포를 구현하기 위해서 여러가지 도구와 프로세스가 필요한데, 예를들어 코드 변경사항을 버전관리 시스템에 커밋하면 해당 코드를 자동으로 빌드하고, 테스트를 실행하고, 빌드 결과물을 운영환경에 배포하는 CI / CD 파이프라인이 구성된다. 지속적 배포를 통해 개발 및 운영팀간의 소통과 협업을 향상 시킬수있다. 개발팀은 더빠르고 안정적인 배포가 가능하고 사용자의 요구사항에 빠르게 대응이 가능하다. 지속적 배포 방식은 애플리케이션 배포 주기를 단축하고, 버그를 빠르게 수정할수있게 도와준다. 하지..

CS & OS 🖥️ 2023.07.28

Mapper 에러

문제 DTO와 엔티티를 매핑하기위해서 mapstruct를 사용했는데 계속해서 에러가 발생했다. 이런식으로 userName과 email을 양쪽에서 찾아와서 알아서 매핑을 해줘야 되는데 정말 이상하게도 Member의 디폴트 생성자가 없는데도 new Member(); 이런식으로 meber를 리턴해줬다. 이것저것 적용을 하느라고 확실히 어떤문제인지는 찾아내지못했지만 가장 유력한건 롬복과 mapsturct의 dependencies 순서인것같다. (좀더 확인이 필요하다.) 롬복이 mapstruct 보다 뒤에 선언되어있으면 에러가 발생할수도 있다고 하는데 확실한지는 모르겠다. 참고사항 1. 변환과정에서 변환 전의 객체에서 값을 꺼내와야 하므로 변환 전 객체(source) 에는 Getter가 있어야 한다. 2. 변환과..

Error Logs🐾 2023.07.28

CI(Continuous Intergration)

CI ? CI는 지속적 통합이라는 뜻의, 개발 프로세스이다. 지속적 통합은 서비스 전달에 앞서 선행되어야 하는 과정이고 사람의 실수를 줄이는 자동화 과정이다. 즉 코드를 자동으로 빌드하고 테스트를 수행하는 프로세스로 매우 중요한 개발 방법론 중 하나이다. 개발자들의 실수를 줄여서 코드 품질이 향상된다. 문제가 생겼을때 빠른 피드백을 받는다. 빌드 및 테스트를 자동화하여, 개발자가 실제 개발에 집중이 가능하다. Build 빌든느 소스코드 파일을 컴퓨터가 이해할수있게 변환하는 과정을 말한다. 이러한 결과물을 Artifact(아티팩트) 라고 부르고 바이너리파일, 라이브러리, 패키지 형태로 제공된다. 빌드과정은 매우 복잡하고 번거로운데 수동으로 이를 처리하게되면 오래걸리고 사람이 직접하다보니 실수의 가능성이 높..

CS & OS 🖥️ 2023.07.27
반응형