원격 서버에 포럼을 설치하던 중, CPanel의 원격 서버 기능을 통해 메인 사이트를 서버에 추가하면서 일반 NameCheap 호스팅에서 원격 서버로 이전했습니다. 이후 포럼 사이트가 내려가 버렸고, ./launcher rebuild app 명령어도 실행할 수 없고 언인스톨도 불가능한 상태입니다. 오류 메시지로 *.yml 파일이 없거나 접근할 수 없다고 표시되며, ls -al로 확인해 보아도 app.yml이나 다른 이름의 파일이 없고 포트가 열려 있지 않다고 나옵니다.
cPanel이 지원되지 않는다고 생각합니다.
음, 같은 서버에서 작동해야 하고, 서로 충돌하면 안 되죠. 이제 그 도메인 이름은 단순히 'Index of /'로 설정했습니다.
행운을 빕니다!
cPanel은 PHP 기반의 서비스에서만 작동하는 것 같습니다. 리버스 프록시가 있었다면 작동하게 만들 수 있을지 모르지만, 쉽지 않을 것입니다. 만약 리버스 프록지가 있고 그 작동 방식에 대해 잘 안다면, Discourse를 별도의 서버에 설치하여 어떻게 작동하는지 확인한 후, app.yml 파일의 포트 번호를 리버스 프록지가 가리키는 값으로 변경할 수 있습니다. 그런 다음 해당 app.yml 파일을 cPanel 서버로 복사하면 작동할 수도 있습니다.
하지만 이 모든 것이 완벽하게 이해되지 않는다면, 표준 설치 방식으로 Discourse를 별도의 서버에 설치하는 것이 더 나은 선택일 것입니다.
네, VPS 서버를 하나 더 구매했습니다.
OS: Ubuntu-20.04-amd64
RAM: 2 GB
포트 속도: 250 Mbps
디스크 용량: 20 GB
위와 같은 메시지가 뜨는데, RAM을 증설해야 하나요?
WARNING: Discourse requires at least 2GB of swap when running with 2GB of RAM
or less. This system does not appear to have sufficient swap space.
Without sufficient swap space, your site may not work properly, and future
upgrades of Discourse may not complete successfully.
Ctrl+C to exit or wait 5 seconds to have a 2GB swapfile created.
install: cannot remove '/swapfile': Operation not permitted
fallocate: fallocate failed: Text file busy
mkswap: error: /swapfile is mounted; will not make swapspace
swapon: /swapfile: swapon failed: Device or resource busy
/swapfile swap swap auto 0 0
vm.swappiness = 10
Failed to create swap: are you root? Are you running on real hardware, or a fully virtualized server?
디스크 공간 20GB은 부족할 가능성이 높습니다.
오류 메시지에 따르면 스왑 공간을 설정하는 데 실패했다고 합니다. 루트 권한으로 실행하고 계신가요?
어떤 이유로든 스왑을 생성할 권한이 없는 것 같습니다. 루트 사용자로 실행하지 않고 있거나, 필요한 제어 권한을 부여하는 제대로 된 가상 머신을 사용하지 않고 있기 때문일 수 있습니다.
- 2 CPU 코어
- 2 GB RAM
- 40 GB SSD RAID 10
- 1000 GB 대역폭
이 VPS 서버가 괜찮나요?
제 생각에는 이제 최소한의 사양입니다. 4GB를 갖추는 것이 더 좋습니다. 2GB의 스왑 공간이 있어도, RAM 2GB + 스왑 2GB 구성으로 온라인 업데이트를 진행하면 정말 고됩니다!
또한, 최근 이 버전에서 새로운 의존성이 추가되었으므로 Ubuntu 22.x를 사용해야 합니다.
루트 사용자로 실행 중인가요?
docker를 실행할 수 있나요?
저는 다음을 구매합니다.
- CPU 4코어
- RAM 6GB
- 디스크 공간 120GB SSD RAID 10
그리고 docker와 git을 설치하고 저장소를 클론한 후 ./discourse-setup을 실행했는데, 다음과 같은 메시지가 표시됩니다.
Checking your domain name . . .
WARNING: Port 443 of computer does not appear to be accessible using hostname: forum.layerzero.news.
WARNING: Connection to http://forum.layerzero.news (port 80) also fails.
This suggests that forum.layerzero.news resolves to some IP address that does not reach this
machine where you are installing discourse.
The first thing to do is confirm that forum.layerzero.news resolves to the IP address of this server.
You usually do this at the same place you purchased the domain.
If you are sure that the IP address resolves correctly, it could be a firewall issue.
A web search for "open ports YOUR CLOUD SERVICE" might help.
This tool is designed only for the most standard installations. If you cannot resolve
the issue above, you will need to edit containers/app.yml yourself and then type
./launcher rebuild app
다른 VPS에서 전부 삭제하는 것도 불가능한데, 어떻게 해결해야 할까요? 아니면 다른 방법으로 뭘 할 수 있을까요?
이 호스트 이름으로 ssh를 연결하면 올바른 VM에 접속하게 되나요?
음, 저는 새 VM에 완전히 연결되어 있고, 이 서브도메인에 이미 discourse를 설치해 두었습니다. 제 이해가 맞다면요.
이름은 vm의 IP 주소로 해석되어야 합니다.
$ dig +short forum.layerzero.news
91.208.127.60
새로운 vm이 91.208.127.60인가요?
아니요, 제 새 서버는 162.254.32.63입니다
DNS를 업데이트하여 새 서버를 가리키도록 설정해야 합니다.
그것이 이 메시지가 알려주려던 내용입니다.
$ dig +short forum.layerzero.news
162.254.32.63
이 명령어를 실행해서 IP를 업데이트해야 하는 건가요, 아니면 도메인 서비스에서 IP를 업데이트해야 하는 건가요?
확인 방법은 이렇습니다. DNS가 설정된 곳(예: Namecheap)에서 업데이트해야 합니다.
DNS가 항상 문제입니다.