본문 바로가기

DevOps/Docker

(35)
[Docker 실습] AWS EC2에 Spring Boot 배포하기 AWS EC2에 Spring Boot 배포하기1. start.spring.io 에서 간단하게 프로젝트 셋팅을 해보자.    2. 인텔리제이에서 프로젝트를 오픈한다 . 3. AppController 파일을 생성하고 간단한 코드 작성package com.example.SpringProjectForDeploy;import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotation.RestController;@RestControllerpublic class AppController { @GetMapping("/") public String home() { return "Do..
[Docker 기본] AWS ECR(Elastic Container Registry) 사용해보기 AWS ECR 사용해보기1. 컴퓨터에 아래 명령어를 실행시켜서 aws cli를 설치한다. brew install awscliaws --version 2. EC2 ubuntu 에 아래 명령어를 입력해서 설치$ sudo apt install unzip$ curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"$ unzip awscliv2.zip$ sudo ./aws/install$ aws --version # 잘 출력된다면 정상 설치된 상태  정상적으로 설치되었다.  3. AWS 를 새 페이지에서 접속해서, IAM 을 검색한다.=> ECR에 접근하기 위한 권한을 얻기위해 만드는 것 4. IAM > 사용자  사용자 생성>..
[Docker 기본] AWS ECR(Elastic Container Registry) 란? AWS ECR(Elastic Container Registry) 란?이전에 우리는 필요한 이미지를 다운받기 위해 Docker hub을 이용했었다. AWS ECR 은 Docker Hub과 동일한 역할을 하는 서비스를 제공한다. 즉, AWS ECR 은 이미지를 저장 및 다운받을 수 있는 저장소 이다.  Docker Hub를 쓰면 되잖아?최근 AWS 클라우드 환경에서 인프라는 구축하는 일이 많아졌다. AWS ECR을 사용하면 다른 AWS Resource와의 연동이 편하고, AWS 내에서 한번에 관리할 수 있다는 장점이 있다.   AWS EC2를 배우는 이유Docker를 사용하기 전에 많이 사용하던 배포방식은 Github을 이용하는 방법이었다. 프로젝트 코드를 Github에 Push 한 뒤, AWS EC2에 접..
[Docker 실습] Ubuntu에서 Docker, Docker Compose 설치하기 EC2 셋팅2024.07.09 - [AWS] - [AWS 실습] EC2 셋팅하기 - 기본 설정 [AWS 실습] EC2 셋팅하기 - 기본 설정기본 설정 셋팅하기EC2 라는 컴퓨터를 한 대 빌려보자.  화면에서 인스턴스 시작 버튼을 눌러보자.  1. 이름 및 태그나중에 여러 서버를 사용하게 될 수 있다. 나중에 EC2 인스턴스 끼리 각각 분dev-baese.tistory.com Ubuntu에서 Docker, Docker Compose 설치하기 1. EC2에 연결해보자.  2. 도커 설치sudo apt-get update && \ sudo apt-get install -y apt-transport-https ca-certificates curl software-properties-common && \ curl..
[Docker 실습] Spring boot, MySQL 컨테이너 동시에 띄워보기 Spring boot, MySQL 컨테이너 동시에 띄워보기실제로 서비스를 구성하다 보면 백엔드와 db를 같이 띄우는 경우가 많다. Spring boot, MySQL컨테이너를 동시에 띄워보자. 1. start.spring.io    2. 간단한 코드를 작성해보자. AppController.javapackage com.example.springWithMySQL;import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotation.RestController;@RestControllerpublic class AppController { @GetMapping("/") public Str..
[Docker 실습] MySQL, Redis 컨테이너 동시에 띄워보기 MySQL, Redis 컨테이너 동시에 띄워보기1. 폴더를 생성하고 vs code로 폴더를 오픈한다. 2. 폴더에 compose.yml 파일 생성services: my-db: image: mysql environment: MYSQL_ROOT_PASSWORD: pwd1234 volumes: - ./mysql_data:/var/lib/mysql ports: - 3306:3306 my-cache-server: image: redis ports: - 6379:6379  3. 실행 docker compose up -d 4. docker compose psmysql, redis 둘 다 떠있는 것을 확인할 수 있다.  5. docker compose..
[Docker 실습] Docker Compose로 백엔드(Spring boot) 실행시키기 Docker Compose로 Spring boot 실행시키기1. 스프링부트 프로젝트 생성하기. 이전에 생성한 프로젝트로 실습해도 된다.  2. Dockerfile 작성FROM openjdk:17-jdkCOPY build/libs/*SNAPSHOT.jar app.jarENTRYPOINT ["java", "-jar", "/app.jar"] 3. build./gradlew clean build 4. compose.yml 파일 생성services: my-server: build: . ports: - 8080:8080 build: .  => 도커 파일을 기반으로 빌드한 이미지를 쓰겠다는 의미   : 뒤에는 도커파일이 위치한 경로를 써준다. compose.yml을 기준으로 상대로 경로를 적어주..
[Docker 실습] Docker Compose로 MySQL 실행시키기 Docker Compose로 MySQL 실행시키기* docker run -e MYSQL_ROOT_PASSWORD=1234 -p 3306:3306 -v /Users/seeun/Documents/Develop/docker-mysql/mysql_data:/var/lib/mysql -d mysql 1. compose.yml 작성위의 명령어와 비교해보자. services: my-db: image: mysql environment: MYSQL_ROOT_PASSWORD: 1q2w3e4r volumes: - ./mysql_data:/var/lib/mysql ports: - 3306:3306=> 환경변수 설정하는 부분 주의해서 보자 2. 터미널에서 실행 docker co..