집에서 중고 데스크탑(hdd 500 GB)에 LAPM(centos7,apache,php,mariadb) 설치해서 사이트 작업(실서버) 중입니다.

 

향후 유지보수를 위해 개발서버를 따로 구성해야 될 것 같아 검색해보니, 아래 글을 봤어요.

https://xe1.xpressengine.com/forum/23039306

 

기진곰님 댓글에

"그래도 실서버에서 git 작업하는 건 추천하지 않고요...
저는 개발서버에서 업데이트한 후에 rsync로 실서버에 적용합니다."라는 글을 보고 좋은 방법이라 생각들었어요.

 

저는 주로 노트북으로 아래와 같이 작업하고 있어요.

  • 인터넷 사이트 접속 : pc화면/모바일 화면 수정작업, 관리자페이지 수정
  • sublime text (또는 vscode), filezilla : source 수정
  • putty(ssh) : 서버관리, 설치, 백업 file생성, git 등

centos서버(표준파티션, RAID/LVM 아님)는 hdd 한 곳에 rhymix를 /apm/apps/docs/xe 폴더에 설치해서 운영중인데요,

 

개발서버는 아래 방식 중 어떤 방법이 괜찮을 지 ?

아님 다른 추천하실 방법이 있으시면 고견 부탁드립니다. (아직 모르는 게 넘 많네요ㅠㅠ)

  1. 현상태(hdd 한개)에서 새 폴더 추가 (예: xe_dev)
  2. 현상태(hdd 한개)에서 새 파티션 추가 (예: apm_dev) -> centos 재설치 하면서 파티션 재 구성
  3. 새 hdd 추가 -> 파티션으로 구성 (기존 apm파티션과  동일하게)
  4. 새 hdd 추가 -> 폴더로만 구성 (기존 hdd의 apm파티션에 링크 : 가능한지는 잘모름)
  5. 새 데스크탑 추가 -> 동일 lapm 구성

 

 

 

 

 

 

  • profile

    용량이 넉넉하고, 어차피 홈서버라면 복잡하게 생각할 것 없이 1번입니다.

     

    DB 하나 더 생성하고, 다른 폴더에 라이믹스 설치하고, 아파치에서 VirtualHost 하나 따로 만들어서 그 폴더에 연결하면 그만인데 왜 아까운 자원을 낭비해요?

     

    실서버에서 ㅇㅇ하지 말라는 조언은 실서버로 사용하는 계정/폴더에서 그 작업을 직접 하지 말라는 뜻이지, 실서버로 사용하는 물리적인 장비와는 대체로 관련이 없습니다. 용량이 충분하고 과부하를 일으키지만 않는다면 똑같은 장비에 실서비스용 사이트 1000개와 개발용 사이트 1000개를 동시에 돌려도 돼요. 웹호스팅 업체들은 다 그렇게 하는걸요. rsync도 다른 서버와 동기화하는 것보다 로컬 폴더 2개를 동기화하는 작업이 훨씬 빠르고요. 안정성에 조금이나마 영향을 줄지는 모르겠지만, 중고 홈서버 레벨에서 걱정할 수준은 아닐 것 같네요.

     

    만약 HDD 하나 더 추가할 돈이 있다면 지금 있는 HDD를 SSD로 교체하시는 편이 훨씬 이득일 거예요. 파일서버나 백업디스크를 제외하면 실서버에 HDD가 적절한 선택인 상황은 거의 없으니까요.

     

    개발서버, 실서버를 막론하고 2020년대의 개발 플로우에 filezilla가 끼어들 여지는 없습니다. 제대로 된 에디터라면 개발서버 SFTP 계정에 있는 파일을 마치 로컬 파일처럼 직접 둘러보며 수정하는 기능이 있으니까요. (실서버에서 이렇게 수정하는 것은 물론 비추입니다.) 다운로드→수정→업로드를 반복하는 것은 메모장으로 소스 편집하던 시절에나 쓰던 개발 방식이죠. 심지어 에디터 내에서 SSH 터미널을 열고 일반적인 git 작업을 처리할 수도 있으니 평소에는 putty도 필요없어요. 듀얼모니터로 브라우저 하나, VSCode 하나 띄워놓으면 끝.^^

  • profile profile
    흑흑 기짐곰님 넘 감사드립니다. 어지러웠던 머리가 말끔해졌어요^^
    모든 부분에 대해 자세한 설명과 해답을 주시고 추가 조언까지 주시고 ( _ _ )

    sublime은 처음 만났던 아이인데 이후 vscode를 알게 되었지만 주로 sublime을 써왔네요.
    이젠 첫사랑의 애뜻함을 뒤로 하고 새로운 사랑을 찾아가야될 것 같아요^^
  • profile profile
    Sublime Text도 SFTP 플러그인 있어요. 심지어 기본 중의 기본인 Notepad++도 됩니다. 에디터라는 이름을 걸고 나오는 제품이라면 모두 다 지원하는 기능이니, 익숙하신 것을 사용하시면 돼요.
  • profile profile
    아네 그렇군요.
    Vscode 써보니 좋더라구요. Emmet 코딩도 기본 지원되는 것 같구요.
    그동안 손에 익은 sublime 썼었는데 vscode를 익혀봐야될듯해요^^
  • profile

    물리적으로 실서버와 개발서버를 분리시키는 경우를 보면, 거의 실서버를 망가뜨리는 것을 막기 위한 목적인 것 같아요. 개발하다가 혹시나 실수나 모종의 이유로 서버가 다운되어 버리면 곤란하겠죠.

     

    꼭 서버를 나눠야하는 게 아니라면 같은 서버에 두는 것도 나쁘지 않습니다.

  • profile profile
    SimpleCode님 감사드립니다. 말씀하신 그런 실수,사고를 생각해보곤 했는데 지속적으로 고민해보고 공부해봐야겠어요.
  • profile

    개발서버를 물리적으로 분리했을때의 이점은, (1) OS 패치나 웹서버, php, DB 업그레이드 버전을 미리 테스트 해볼수 있다. (2) 백업 서버로도 활용할 수 있다. 해킹당하거나 했을때 생존 확률을 높일 수 있죠.

    단점은 돈이 드는 것인데, 사양이 높을 필요가 없으므로 많이 들일 필요는 없겠지요~~

  • profile profile
    토비리님 감사드립니다. 구체적인 장단점에 대해 좀 더 알게 되니 넘 좋아요.