Synology NAS DS116 을 작업실에서 그냥 방치해뒀다가 이번에 개인 웹 사이트를 얹힐 수 있게 웹 서버 유사하게 환경을 만들어서 테스트 중인데 상당히 괜찮네요.
단순히 워드프레스 같은 저작 툴을 사용하고 싶지는 않고 직업이 개발자인 특성 상 직접 하나하나 구축하고 싶어 ReactJS + MariaDB 형태로 진행 중입니다.
기본적인 HTML5 + CSS3 + JavaScript + PHP + MySQL 같은 형태라면 큰 문제가 없었을 것 같은데 제가 하고자 하는 방식은 DSM 에 환경을 꾸리기가 상당히 어려웠습니다. 대략적으로 진행을 할 수 있게 환경을 만들면서 필요했던 부분은 이렇습니다.
1. 도메인 구입 후 포트포워딩 및 역방향 프록시 설정으로 접속 환경 구축
2. Node.js v12 설치 후 환경변수 및 사용자 권한 부여
2.1. 'node' 및 'npm' 버전 업그레이드 시 발생하는 오류 해결
2.2. 'ipkg' 설치 및 관련 의존성 패키지 설치
3. ReactJS 의 환경으로 구축할 때 필요한 패키지 설치
3.1. Sass 와 같은 환경을 위해 'node-sass' 설치 시 시스템 오류 해결 (zlib 패키지 버전 문제, libintl.h 파일 부재)
3.2. 'forever' 과 'n' 같은 패키지 설치 시 발생하는 오류 해결
근데 게시판이나 구글링을 해보면서 느낀 결과 시놀로지 특성 상 웹 서버처럼 사용하는 것은 사실 좀 억지스러운 부분도 있기는 한 것 같습니다만 실제로 내 웹 사이트가 올라가서 외부에서 접속되는 것을 확인하면 또 나름 기분이 좋더라구요.
혹여나 저와 비슷한 생각으로 시놀로지 나스를 운용하고자 하시는 분이 어느 정도 있다면 지식 공유 차원에서 강좌 형태로 올려보려고 합니다..
테스트 해보니 도커에 올렸을때가 리소스를 덜먹는거 같습니다.. 웹서버 테스트 하느라 메모리도 10기가로 올렸는데..
개인용으로 홈페이지 운영은 충분해 보입니다
/Vollago
개인용 gitlab도 좀 느리긴 하지만 관리하는데 문제는 없습니다.
백단은 spring, 프론트는 vue로 해서 각각 docker로 이미지를 말아 올렸습니다.
그 외로 upload server (이미지,파일), static server도 docker로 말아서 운영중입니다 ㅎㅎ..
DB는 패키지로 제공하는 MARIA DB쓰고있습니다.
저는 NHN에서 오픈소스로 제공하는 Toast-Editor사용하고있습니다.
글 작성시에는 마크다운 contents를 그대로, 서버쪽으로 보내고 DB에 저장합니다. (프론트 -> 서버 -> DB)
마찬가지로 조회 시에는 contents를 그대로 DB로 부터 가져와 Toost-Viewer로 뿌려주고있습니다 ( DB -> 서버 -> 프론트)
Toast-Editor 사용시 이미지가 Base64형태로 입력되서, 별도의 플로우로 처리했습니다. :)