rakim

고정 헤더 영역

글 제목

메뉴 레이어

rakim

메뉴 리스트

  • 홈
  • 태그
  • 방명록
  • 분류 전체보기 (45)
    • 마케팅 (0)
    • 책 (15)
      • 책 리뷰 (14)
      • 책 카테고리 리뷰 (1)
    • 코딩 테스트 (10)
      • 구름 문제 풀이 (2)
      • 프로그래머스 문제 풀이 (5)
      • 백준 문제 풀이 (3)
    • DevOps (7)
      • Terraform (6)
      • Docker (1)
    • AI 관련 (4)
      • Langgraph (2)
      • SemanticKernel (1)
    • 플러터 (8)
      • 아카이브 (2)
      • 입문 (6)

검색 레이어

rakim

검색 영역

컨텐츠 검색

DevOps

  • Terraform으로 EC2에 백엔드 서버 배포 (with ECR) 5장 main.tf

    2025.09.01 by rakyun

  • Terraform으로 EC2에 백엔드 서버 배포 (with ECR) 4장 Security Group 모듈

    2025.08.23 by rakyun

  • Terraform으로 EC2에 백엔드 서버 배포 (with ECR) 3장 IAM 모듈

    2025.08.23 by rakyun

  • Terraform으로 EC2에 백엔드 서버 배포 (with ECR) 2장 ECR 모듈

    2025.08.20 by rakyun

  • Terraform으로 EC2에 백엔드 서버 배포 (with ECR) 1장 EC2 모듈

    2025.08.20 by rakyun

  • Terraform 기본 사용법

    2025.08.20 by rakyun

  • 도커 이미지 파일 최적화 방법 (Multi-Stage-Build, .dockerignore)

    2025.08.13 by rakyun

Terraform으로 EC2에 백엔드 서버 배포 (with ECR) 5장 main.tf

Terraform 모듈들을 조립하는 총괄 설계도terraform.tfvars에 모든 변수들의 값을 저장해두고 각기 모듈들에서 필요한 변수들을 넣어주는 역할을 main.tf에서 한다. # 프로덕션 환경을 위한 메인 Terraform 설정 파일# 이 파일은 모든 모듈을 조합하여 전체 인프라를 구성합니다terraform { # Terraform 버전 요구사항 - 1.0 이상 필요 required_version = ">= 1.0" # 필요한 Provider 정의 required_providers { aws = { source = "hashicorp/aws" # AWS Provider 소스 version = "~> 5.0" # 5.x 버전 사용 (5.0 이상,..

DevOps/Terraform 2025. 9. 1. 20:48

Terraform으로 EC2에 백엔드 서버 배포 (with ECR) 4장 Security Group 모듈

Security Group이 코드는 EC2의 보안 그룹(Security Group)이라는 가상 방화벽을 생성하고 설정하는 스크립트. 이 코드의 주요 역할은 EC2 인스턴스(서버)에 대한 네트워크 트래픽을 제어하여, 허용된 연결만 주고받을 수 있도록 보안을 강화하는 것.# 백엔드를 위한 보안 그룹 (방화벽 규칙)# 보안 그룹은 EC2 인스턴스에 대한 인바운드/아웃바운드 트래픽을 제어합니다resource "aws_security_group" "backend_sg" { # 보안 그룹 이름 - 프로젝트명-환경-sg 형식 name = "${var.project_name}-${var.environment}-sg" # 보안 그룹 설명 description = "Security group for..

DevOps/Terraform 2025. 8. 23. 20:05

Terraform으로 EC2에 백엔드 서버 배포 (with ECR) 3장 IAM 모듈

IAM# EC2 인스턴스가 ECR과 CloudWatch에 접근할 수 있도록 하는 IAM 역할# IAM 역할을 통해 EC2는 AWS 서비스에 안전하게 접근할 수 있습니다# EC2용 IAM 역할 생성resource "aws_iam_role" "ec2_role" { # 역할 이름 - 프로젝트명-환경-ec2-role 형식 name = "${var.project_name}-${var.environment}-ec2-role" # AssumeRole 정책 - EC2 서비스가 이 역할을 사용할 수 있도록 허용 # EC2 인스턴스가 이 역할을 "assume"(가정)할 수 있게 해줍니다 assume_role_policy = jsonencode({ Version = "2012-10-17" Statemen..

DevOps/Terraform 2025. 8. 23. 19:43

Terraform으로 EC2에 백엔드 서버 배포 (with ECR) 2장 ECR 모듈

ECRecr은 registry로 docker image를 저장하고 관리하는 역할을 한다.# 백엔드를 위한 ECR 리포지토리# ECR은 AWS의 Docker 컨테이너 레지스트리 서비스입니다resource "aws_ecr_repository" "backend" { # 리포지토리 이름 - 프로젝트명-backend-환경 형식 name = "${var.project_name}-backend-${var.environment}" # 이미지 태그 변경 가능 여부 - MUTABLE: 같은 태그로 덮어쓰기 가능 image_tag_mutability = "MUTABLE" # 이미지 스캔 설정 - 보안 취약점 자동 검사 image_scanning_configuration { s..

DevOps/Terraform 2025. 8. 20. 11:59

Terraform으로 EC2에 백엔드 서버 배포 (with ECR) 1장 EC2 모듈

먼저 나의 배포 계획은 ecr에 백엔드 서버 도커 이미지를 올리고 올라간 도커 이미지를 ec2 서버에서 pull 받아서 사용하는 방법을 선택했다. Terraform 모듈 설정모듈은 총 4개를 만들었다. ec2, ecr iam, security_group이다.iam은 ecr에 이미지를 올리는 권한 ec2에서 ecr의 이미지를 가져오는 권한 등을 주기 위함이다.security_group은 ec2의 인바운드/아웃받운드 트래픽을 제어하기 위해 만들었다.EC2# 백엔드를 위한 EC2 인스턴스# 실제 애플리케이션이 실행될 서버입니다# 최신 Ubuntu AMI 조회# AMI(Amazon Machine Image)는 EC2 인스턴스의 템플릿입니다data "aws_ami" "ubuntu" { most_recent = ..

DevOps/Terraform 2025. 8. 20. 11:59

Terraform 기본 사용법

이 글은 inflearn의 "처음 시작하는 Infrastructure as Code: AWS & 테라폼" 강의를 바탕으로 작성되었습니다!IaC 란?Infrastructure as Code의 줄임말로 코드로 인프라를 구축하는 것을 말한다.코드이기에 재사용성, 유지보수 등의 장점을 가진다.Terraform 이란?IaC를 구축하기 위한 도구현재 업계에서 가장 많이 쓰이는 IaC 도구Terraform 구성요소provider : 테라폼으로 생성할 인프라의 종류resource : 테라폼으로 실제로 생성할 인프라 자원state : 테라폼을 통해 생성한 자원의 상태output : 테라폼으로 만든 자원을 변수 형태로 state에 저장하는 것module : 공통적으로 활용할 수 있는 코드를 문자 그대로 모듈 형태로 정의하..

DevOps/Terraform 2025. 8. 20. 09:56

도커 이미지 파일 최적화 방법 (Multi-Stage-Build, .dockerignore)

멀티 스테이지 빌드란?하나의 Dockerfile 안에 빌드 환경과 실행 환경을 분리하여 불필요한 파일 없이 오직 실행에 필요한 결과물만 담는 가볍고 안전한 이미지를 만드는 기술멀티 스테이지 빌드를 쓰는 이유컴파일이 필요한 언어의 도커 이미지를 만들면 빌드에 사용했던 모든 도구들이 최종 이미지에 그대로 남게된다.만든 앱 파일은 10MB 정도 밖에 안됨에도 최종 이미지는 800MB가 넘는 컴파일러와 소스 코드 등을 모두 포함하게 된다. 이는 비효율적인 뿐더러 보안에도 취약하다.사용 예시# 1단계: 빌드(Build) 스테이지. 'builder' 라는 별명을 붙임FROM golang:1.22 AS builderWORKDIR /appCOPY . .# 소스 코드를 빌드하여 'myapp' 실행 파일 생성RUN go ..

DevOps/Docker 2025. 8. 13. 14:13

추가 정보

인기글

최신글

페이징

이전
1
다음
TISTORY
rakim © Magazine Lab
페이스북 트위터 인스타그램 유투브 메일

티스토리툴바