Devops/도커

리파지토리를 통해서 공유해 보자 들어가며 도커를 통해 실행하려는데, 내 컴퓨터가 아닌 다른 장소에서도 사용할 수 있도록 도커 허브에 나만의 도커 이미지를 저장해두고자 합니다. 이제 도커 허브에 도커 이미지를 업로드하는 방법 및 도커 허브를 통해 이미지를 다운로드하는 방법을을 알아보겠습니다. 도커 허브란? 도커 허브는 개발자들이 손쉽게 도커 이미지를 저장하고 공유할 수 있는 플랫폼입니다. 개발자들은 자신의 이미지를 도커 허브에 업로드하여 언제 어디서든 접근하여 사용할 수 있습니다 도커 허브의 주요 기능 이미지 호스팅 : 자신의 도커 허브를 통해서 도커 이미지를 저장하고 관리 가능하다. 버전관리 : 이미지 별로 버전을 관리해 효율적으로 관리할 수 있다. 협업 기능 : 협업 시 팀원들과 내가 만든 이미지를 공..
docker-compose로 컨테이너 실행하기 들어가며 게시판 프로젝트를 만들어봤다. 하지만 게시판 프로젝트는 도커로 실행하려면 MySQL 도커파일과 Spring의 도커파일을 두가지를 작성해 두개의 컨테이너를 각각 실행시켜야한다. 하지만 도커 컴포즈를 사용하면 한번에 두개의 컨테이너를 실행시켜준다. 이제한번 도커 컴포즈를 작성해보고 실행해보자. 사전준비 1. 게시판 프로젝트 만들기 [SpringBoot ] 무작정 (REST API)CRUD게시판을 만들어 보자 준비 [1] [1] 프로젝트 준비 들어가며 프레임워크나, 언어, DB등을 이론적로 공부를 하고난후에 한번 토이 프로젝트를 통해서 실습을 해보고싶었다. 그래서 이번에 간단한 CRUD를 통해 게시판을 만들어봤다 back-stead.tistory.com ..
MySQL을 연동해 보자 그리고 Volume을 사용해 보자 들어가며 데이터베이스를 Docker 컨테이너에 올리고 워크벤치를 통해 원격으로 접속하는 방법에 대해 살펴보겠습니다. 또한 Docker의 지정된 볼륨과 호스트 컴퓨터의 볼륨을 만드는 방법도 함께 알아보겠습니다. MySQL 컨테이너 생성하기 원격으로 접속하기 위해서는 일단 도커 컨테이너에 MySQL컨테이너가 있어야 한다. 일단 우리는 도커파일을 통해서 MySQL을 컨테이너에 올려보자. mysql-volume : 호스트가 볼륨을 설정하는 디렉터리 이제 이미지를 도커에 올리기 위해서 도커파일을 작성해 보자 Dockerfile FROM mysql:8.0.33 ENV MYSQL_USER=blog ENV MYSQL_PASSWORD=a1234 ENV MYSQL..
설정파일을 직접 커스텀 해보자 들어가며 기존에 있던 nginx의 설정파일을 내가 원하는 설정으로 바꿔서 커스텀해보고 실행해보자. 기존 nginx 살펴보기 기존의 nginx를 실행하고 접속하면 이런 이런 페이지가 나온다. 나오지않는다면 오류가 난것이다. 없는 페이지에 접속하면 다음과 같이 기존 404 오류페이지를 보여준다. 실행중인 nginx컨테이너에 접속하고 /etc/nginx/conf.d 위치로 이동해보면 기본 설정 파일이 존재한다. html 파일 위치 이런 내용의 설정파일이 작성된것을 볼수있다. 이제 우리는 설정 파일을 수정해서 실행해보자. 설정파일 커스텀하기 현재 나의 파일구조 Dockerfile 작성 FROM nginx COPY webapp /usr/share/nginx/html COPY conf..
Docker 파일 작성하는 방법 들어가며 도커를 통해 배포를 실행하려면 도커 파일을 작성해 이미지로 만들고 컨테이너에 올려야 하는 과정을 걷혀야 한다. 도커 파일을 작성에 우분투 OS에 Nginx 서버를 사용해 간단하게 사용해 보자 도커 파일이란? 도커파일은 도커 컨테이너 이미지를 만들기 위한 텍스트 파일입니다. 도커 파일은 도커 엔진에게 컨테이너가 어떻게 구성되어야 하는지 참고하는 파일이다. 도커파일에는 베이스 이미지의 선택, 필요한 패키지의 설치, 환경 변수의 설정 등의 작업등을 작성할 수 있다. 이 파일을 사용하면 동일한 환경을 가진 여러 개의 컨테이너를 쉽게 만들고 실행할 수 있습니다. 도커 파일 작성 방법 Dokcerfile FROM ubuntu RUN apt-get update RUN apt-..
헬스체크와 디펜던시 체크로 신뢰성 확보하기 들어가며 컨테이너 기반의 애플리케이션을 배포가 증가함에 따라 애플리케이션의 신뢰성가 안정성이 중요하게 여겨야 합니다. 만약 오류가 났을 때 대처하지 못하고 계속 애플리케이션이 실행 중이라면 사용자는 서비스 이용에 대한 불편함을 초래해 떠나는 경우가 발생합니다. 그래서 헬스체크와 디펜더시 체크를 통해 신뢰성과 안전성을 확보해야 한다. 헬스체크란? 헬스체크란? 애플리케이션의 상태를 주기적으로 확인하여 상태를 알려주는 역할을 합니다. 예로 만약에 감기 걸린 사람이 있다고 해봅시다. 감기가 처음에 걸렸을 때 "괜찮아?"라고 물어보면 괜찮다고 할 것입니다. 하지만 감기가 심해젔을때 물어보면 "아니.. 안 괜찮아.."라고 답변하는 것과 비슷합니다. 실행되는 애플리케이션의 ..
컨테이너란 컨테이너란? 도커 컨테이너는 마치 화물선에 적재되는 컨테이너와 유사한 개념입니다. 이 컨테이너 안에는 애플리케이션과 해당 애플리케이션을 실행할 데 필요한 모든 구성 요소가 함께 담겨 있습니다. 그림 1과 같이 도커는 가상의 리소스를 만들어낸 것을 컨테이너라고 합니다. 각 컨테이너는 내부의 정보에 접근할 수 있지만 외부의 정보는 알 수 없는 격리된 상태에 있습니다. 더불어, 여러 개의 컨테이너를 생성하여 각각을 독립적인 환경으로 구성할 수 있습니다. 이로써 도커는 각 컨테이너가 자체적인 실행 환경을 갖고 있는 가상화 기술을 제공하며, 애플리케이션을 효율적으로 관리하고 배포할 수 있게 됩니다. 그림 2처럼 도커를 통해 한 컴퓨터에서 여러 개의 컨테이너를 생성하여 각 컨테이너가 독립적으로 정보를 가..
배포하기 들어가며 프로젝트를 만들고 나서 도커를 통해서 배포하는 법을 알아보자. (mysql을 사용했을 경우.) 프로젝트환경 springboot -version : 2.6.3 bulid : gradlejava -version : 11 DB : Mysql_8.0.33 IDE : IntelliJ _Ultimate Docker : 24.0.7 도커준비 사용할 컴퓨터에 도커가 설치가 되어있는지 확인한다. (cmd 보다는 powershell을 사용하기를 권장.) docker --version 도커파일 작성 Dockerfile FROM adoptopenjdk:11-jre-hotspot WORKDIR /app COPY build/libs/security-0.0.1-SNAPSHOT.jar /app/login.jar E..
코드기록사
'Devops/도커' 카테고리의 글 목록