이번에는 Docker를 통해 Spring Boot 프로젝트를 실행하는 과정을 거치며, 해당 과정에서 새로운 개념들을 배워보도록 하겠습니다. Spring을 사용해보지 않으셨더라도, 굉장히 간단한 프로그렘을 작성할 것이기에 부담은 없을거라 생각합니다. 큰 과정은 다음과 같습니다. DockerFile -> Docker 이미지 -> Docker Container( 컨테이너 내부에서 Spring Boot Application jar 파일 실행 ) (대부분 맥북 M1 기준의 설명이라 윈도우는 조금 다를 수 있습니다) 이번 포스팅에서 완성되는 최종 Dockerfile은 다음과 같습니다. FROM openjdk:17-alpine WORKDIR /usr/src/app ARG JAR_PATH=./build/libs COP..
Docker
도커 이미지 컨테이너를 만들기 위해 필요한 설정이나 종속성들을 가지고 있는 소프트웨어 패키지입니다. 도커 이미지는 Dockerhub에 다른 사람들이 만들어 놓은것을 사용할 수 있으며, 직접 도커 이미지를 만들어서 사용하는 것도 가능합니다. 또한 직접 만든 이미지를 Dockerhub에 올려서 다른 사람들과 공유하는 것도 가능합니다. 도커 이미지는 어떻게 생성하나요? 🧐 도커 컨테이너는 도커 이미지로 생성했습니다. 도커 이미지는 어떻게 생성할 수 있을까요? 도커 이미지의 생성 흐름은 다음과 같습니다. Dockerfile 작성 $\to$ 도커 클라이언트 $\to$ 도커 서버 $\to$ 도커 이미지 생성 Docker File : Docker Image를 만들기 위한 설정 파일입니다. 도커 컨테이너의 행동에 대한..
모든 도커 이미지에서 명령어가 작동되는 것이 아닙니다. 우선 해당 이유를 알아보도록 하겠습니다. 명령어가 사용이 안되는 이미지가 있는데요? 도커 이미지가 가진 파일들 중 명령어를 사용 가능하게 하는 파일이 있는 이미지도 있고, 그렇지 않은 이미지도 있습니다. 예를 들어 제일 처음 알아볼 ls라는 명령어는 hello-wolrd 이미지에서는 실행되지 않습니다. hello-world 이미지를 사용한다면 다음과 같은 오류가 발생합니다. 도커 명령어 나와있지 않은 명령어와, 옵션들, 자세한 사용 방법은 아래 사이트를 참고하시는 것을 추천드립니다. https://docs.docker.com/engine/reference/commandline/docker/ docker docker: The base command f..
도커의 사용이유와 작동 흐름에 대해서 간단히 살펴보겠습니다. 명령어와 실제 사용하는 방법들은 다음 글부터 등장할 예정이니 해당 부분이 필요 없으신 분들은 넘어가주셔도 되겠습니다. 🧐 도커는 무엇일까요? 도커는 컨테이너를 생성하고 관리하기 위한 도구입니다. 소프트웨어 개발에서 컨테이너란 소프트웨어 유닛을 의미합니다. 쉽게 말해 코드들의 패키지와, 해당 코드를 실행하는데 필요한 의존성과 도구를 의미합니다. 즉 동일한 컨테이너를 사용한다면, 동일한 환경에서 정확히 동일한 애플리케이션을 실행할 수 있습니다. 도커는 이러한 컨테이너를 구축하고, 관리하기 위한 도구일 뿐입니다. 🧐 왜 도커인가? 가상화 기술이 나오기 전에는 하나의 서버는 하나의 용도로만 사용되었습니다. 하나의 서버에는 하나의 운영체제만 있었고, 하..