GitHub Actions는 저장소 이벤트를 새 hosted runner의 반복 가능한 job으로 바꿉니다. 이 실습 과정은 실제 GitHub 저장소에서 push workflow부터 Node.js 테스트, 컨테이너 게시, Secret, CI/build/deploy 체인까지 진행합니다.
Jest 성공과 의도적 실패를 관찰하고 Docker 이미지를 GHCR에 게시하며 Secret 로그 마스킹을 검증합니다. 배포는 수동 트리거와 job 의존성을 소개하지만 실제 서버 연결 없이 모의 명령만 출력합니다.
학습 내용
- GitHub 저장소를 만들고 YAML을
.github/workflows에 배치하기 - 트리거, job, hosted runner, shell step 구성하기
- checkout과 Node.js setup action으로 workflow 조합하기
- 의존성을 설치하고 Jest를 실행해 의도적 실패 분석하기
- 제한된 권한으로 Docker 이미지를 GHCR에 게시하기
- Repository Secret을 환경 변수로 참조하고 마스킹 확인하기
- 수동 배포를 모델링하고 모의 안전 검사를 설명하기
needs로ci,build,deploy연결하기
추천 대상
이 중급 과정은 Git 기초가 있고 실제 GitHub Actions workflow를 작성·실행하려는 개발자, Linux 사용자, DevOps 학습자를 위한 과정입니다.
선수 지식: GitHub 계정, Git commit/push, Linux 셸, YAML 들여쓰기, Node.js/npm 및 Docker 기초. HTTPS push에는 Personal Access Token이 필요할 수 있습니다.
학습 환경: GitHub 로그인 브라우저와 공개 연습 저장소를 편집할 Linux 터미널입니다. Workflow는 ubuntu-latest에서 실행되고 GHCR에 이미지를 게시합니다.
자주 묻는 질문
Workflow가 실제 GitHub에서 실행되나요?
네. 저장소를 만들고 Actions 실행을 확인하며 Secret과 컨테이너 패키지를 생성합니다. 오프라인 YAML 검사만 하는 과정이 아닙니다.
실제 staging이나 production 서버에 배포하나요?
아닙니다. SSH, pull, restart를 모의 출력할 뿐입니다. 서버 연결, 원격 컨테이너, GitHub Environment, 승인 gate는 없습니다.
어떤 보안을 다루나요?
GITHUB_TOKEN 권한 제한, Secret 참조, 로그 마스킹입니다. 데모는 예시 Secret을 의도적으로 출력하지만 운영에서는 피하고 더 폭넓은 위협 분석이 필요합니다.





