반응형
Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 | 31 |
Tags
- DevSecOps
- eks
- Container
- git
- kubernetes
- devop
- docker-compose
- devops
- VPN
- 보안
- security
- cloud
- fargate
- IAC
- cloud trail
- ECS
- docker
- cloiud
- secretmanager
- docekr
- AWS
- CICD
- zerotrust
- VPC
- client-vpn
- Network
- saa-c03
- KISA
- 클라우드 보안
- CI/CD
Archives
- Today
- Total
Devsecops로 발전하는 엔지니어
🌐 AWS EC2 + GitHub Actions + Docker 기반 CI/CD 구축기 본문
Devops
🌐 AWS EC2 + GitHub Actions + Docker 기반 CI/CD 구축기
cloud/devops/opensource 관심 많은 곰 2025. 6. 18. 11:13반응형
컨테이너 도입을 위한 방법으로는 Docker, Kubernetes 등 다양한 접근이 있습니다. 하지만 이번에는 처음 컨테이너 기반 서비스 배포를 시작하는 단계로,AWS EC2 + Bastion + GitHub Actions + Docker를 활용하여 Private EC2에 안전하게 WordPress를 배포하는 흐름을 구축했습니다.
🧩 [1편] CI/CD 환경 구축 준비 및 인프라 구성
🧱주요 내용
1. 프로젝트 목표
- GitHub Actions → Bastion → Private EC2에 WordPress 자동 배포
- Docker + ECR을 활용한 컨테이너 기반 구성
- 보안상 privaet EC2는 직접 접근 금지, Bastion 경유 하여 접근제어
2. 네트워크 아키텍처
- VPC 및 서브넷 구성
- Public Subnet → EC2: Bastion
- Private Subnet → EC2: WordPress (Docker 기반)
- NAT Gateway 구성 → Private Subnet에서 외부로 Traffic이 전달 될 수 있도록 설정
- Routing Table 설정 → 각 서브넷에 맞게 인터넷 게이트웨이 또는 NAT 지정
- 접속 흐름
- GitHub Actions → Bastion → Web EC2 (SSH ProxyCommand or -J 옵션)
- 참고사항 -> Bastion 서버의 경우 경유 목적으로만 사용 됩니다.
3. Securtiy 구성
| Bastion | 22/tcp from 내 IP | SSH 접속용 |
| Web EC2 | 8080/tcp from Bastion SG | 워드프레스 확인용 |
| NAT Gateway | 아웃바운드 전용 | Docker 패키지 설치 및 ECR 통신용 |
- pem 키를 authorized_keys에 직접 등록 방식 사용
- 권한 설정 필수: chmod 600 으로 키 파일 보호
- GitHub Actions에서 .pem 키는 base64 인코딩 후 GitHub Secrets에 등록
4. Docker & WordPress 환경 구성
- Ec2(private) 내부의 Docker 설치 및 권한 부여

- docker-compose 설치(Private Ec2)

- .env 파일 구성

- docker-compose.yml 파일 구성

기본적으로 setting은 완료 되었으며, 다음 장에 이어서 CI/CD 연결 및 GIthub내부 세팅을 진행할 예정이며, 총 3장 내용의 불량으로 Trouble Shooting 내역까지 공유 예정이다
반응형
'Devops' 카테고리의 다른 글
| Gitlab CI/CD를 이용한 ECS배포 -1 (1) (0) | 2025.09.03 |
|---|---|
| Blue/Green 배포 (6) | 2025.08.28 |
| Docker 교육 자료 -2 (0) | 2025.06.12 |
| Docker 교육 자료 -1 (0) | 2025.06.07 |
| Kubernetes 개념 정리 2 - Pod (0) | 2025.05.08 |