본문 바로가기

리눅스

우분투에서 Packer를 설치하고 CentOS 7 이미지를 생성하는 방법

728x90

우분투에서 Packer를 설치하고 CentOS 7 이미지를 생성하는 방법

Packer 설치

  • ATP 패키지 매니저로 설치
sudo apt-get update
sudo apt-get install packer

 

  • 바이너리 파일로 최신 버전을 설치 Packer의 공식 다운로드 페이지에서 바이너리를 다운로드
wget https://releases.hashicorp.com/packer/1.7.4/packer_1.7.4_linux_amd64.zip
  • 다운로드한 압축 파일 해제
unzip packer_1.7.4_linux_amd64.zip
  • Packer 실행 파일 이동
sudo mv packer /usr/local/bin/
  • Packer 버전 정보 확인
packer --version
728x90

CentOS 7 이미지 생성

  • CentOS 7 이미지를 생성하는 템플릿 생성
vim centos7.json
{
  "variables": {
    "ami_name": "packer-centos7"
  },
  "builders": [
    {
      "type": "amazon-ebs",
      "region": "us-east-1",
      "ami_name": "{{user `ami_name`}}",
      "instance_type": "t2.micro",
      "ssh_username": "ec2-user",
      "ssh_port": 22,
      "ssh_wait_timeout": "10000s"
    }
  ],
  "provisioners": [
    {
      "type": "shell",
      "inline": [
        "sudo yum install -y httpd",  // Apache 패키지 이름을 수정
        "sudo systemctl enable httpd"
      ]
    },
    {
      "type": "shell",
      "execute_command": "sudo {{.Path}}",
      "script": "scripts/base.sh"
    }
  ]
}
  • 템플릿 빌드
packer build centos7.json

CentOS 7 이미지를 생성하고 Amazon S3 버킷에 저장합니다.

 

  • 생성된 이미지 확인
aws ec2 describe-images --region us-east-1 --filters Name=tag:Name,Values=packer-centos7

생성된 이미지에 대한 정보를 표시합니다.

 

Packer는 정의한 대로 CentOS 7 이미지를 생성하고 설정된 경로에 이미지 파일을 저장합니다.

 

728x90