라즈베리파이 블로그 아키텍쳐 변경기
개인 블로그를 만들었는데 어느새 CI/CD까지 왔다 처음부터 CI/CD나 컨테이너 기반 배포 환경을 만들 생각은 없었다. 라즈베리파이 한 대에서 개인 블로그를 운영하고, 글과 사진을 올리고, 방 안의 센서 값을 기록하는 정도였다. 필요한 기능이 생길 때마다 하나씩 붙이다 보니 Flask, Hugo, PostgreSQL, Redis, Docker, GitHub Actions까지 연결된 작은 플랫폼이 됐다. 돌이켜보면 처음부터 지금의 구조를 설계한 것은 아니다. 오히려 작업을 하면서 계속 새로운 질문이 생겼다. 센서 데이터를 계속 CSV 파일에 쌓는 게 맞을까? 컨테이너를 지웠다가 다시 만들어도 글과 사진은 살아 있어야 하지 않을까? 왜 운영 서버에서 직접 소스를 수정하고 빌드하고 있지? 개발 PC에서는 잘 되는데 깨끗한 Linux 환경에서도 정말 잘 될까? Hugo 코드와 실제 블로그 콘텐츠는 누가 소유해야 할까? Raspberry Pi가 고장 나거나 OS를 다시 설치하면 이 서버를 다시 만들 수 있을까? 이 질문들을 하나씩 해결하면서 현재 구조까지 왔다. ...