Skip to content

Repository files navigation

vws-book

AI와 함께하는 모던 리눅스 서버 관리와 트러블슈팅 실습 리포지터리.

책: https://wikidocs.net/book/20778

Docker 컨테이너 3대(웹/DB/스토리지) + 트러블슈팅 시나리오 5개 + AI 프롬프트.

환경 구축

git clone --recurse-submodules https://github.com/bashbomb/vws-book.git
cd vws-book
docker compose build
docker compose up -d

빌드가 끝나면 컨테이너 3대가 기동된다.

docker compose ps
컨테이너 역할 서비스
cent1 웹서버 Nginx
cent2 DB서버 MariaDB 11.7
cent3 스토리지 NFS

컨테이너 접속:

docker compose exec cent1 bash

실습용 SSH 키

SRC/ssh/ 의 키는 컨테이너 3대가 서로 접속하기 위한 실습 전용 키다. 이 실습 환경 밖에서는 쓰지 않으며, 다른 서버에 등록하지 말 것.

시나리오 실행

scenarios/ 디렉터리에 시나리오 5개가 들어 있다. 각 컨테이너 안에서는 /root/vws-scenario/로 마운트되어 있다.

# 시나리오 서버
1 로그파일 실종사건 cent1
2 DB에 접속이 왜 안돼!? cent2
3 우리 서버, 혹시 영국 출장 중...? cent1, cent2, cent3
4 거대 로그의 습격 cent1
5 착한 사람에게만 보이는 백업파일!? cent1, cent3

실행 방법 (예: 시나리오 1):

# cent1 컨테이너 안에서
cd /root/vws-scenario/1
bash 0.set_scenario1_env.sh   # 환경 설정
bash 1.check_env.sh           # 환경 확인

AI 프롬프트

리포지터리 루트에 CLI AI 도구별 설정 파일이 준비되어 있다.

도구 파일
Claude Code CLAUDE.md
Codex CLI AGENTS.md
Gemini CLI GEMINI.md

내용은 모두 동일하다. 각 도구가 자동으로 읽어들이는 파일명이 다를 뿐이다. 프로젝트 디렉터리에서 CLI AI를 실행하면 실습 환경 정보(서버 구성, 네트워크, 제약사항)를 자동으로 인식한다.

외부 리포지터리

SRC/test_dbdatacharmer/test_db를 git submodule로 참조한다. MySQL 공식 샘플 데이터베이스로, MariaDB 실습에 사용한다. GitHub에서 해당 폴더를 클릭하면 원본 리포지터리로 이동하는데, submodule의 정상 동작이다.

clone할 때 --recurse-submodules 옵션을 붙이면 자동으로 함께 받아진다.

라이선스

CC BY-NC 4.0. 자세한 내용은 LICENSE 참조.

SRC/test_dbCC BY-SA 3.0 라이선스가 적용된 별도 저작물이다.

About

AI와 함께하는 모던 리눅스 서버 관리와 트러블슈팅 - 실습 리포지터리

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages