나는 내 서버에서 호스트하려고하는 간단한 Meteor 웹 앱을 가지고 있습니다. 서버 세부 정보;MongoDB에 연결하는 systemd를 사용하여 Linux (Debian)의 Host Meteor (MeteorJS). 오류 : URL은 mongodb : // user : pass @ host : port/dbname 형식이어야합니다.
- 데비안 (제시) 리눅스 3.16.0-4 - AMD64 # 1 SMP 데비안 3.16.7-ckt2-1 (2014년 12월 8일) x86_64에 GNU/리눅스는
- 는
- NodeJS 버전 0.10을 systemd 0.36
- 유성 버전 1.0.3.1
- MongoDB를 버전 2.6.7
/etc/systemd/system/customwebapp.service 파일;
[Service]
ExecStart=/usr/bin/node /opt/customwebapp/bundle/main.js
Restart=always
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=customwebapp
User=customwebapp
Group=customwebapp
Environment=NODE_ENV=production MONGO_URL='mongodb://localhost'
[Install]
WantedBy=multi-user.target
저는 다음을 사용하여 서비스 계정을 만듭니다.
sudo useradd -mrU customwebapp
나는 Meteor 앱을;
sudo meteor build --directory /opt/customwebapp
cd /opt/customwebapp/programs/server
sudo npm install
서비스를 등록하려고합니다.
sudo systemctl enable customwebapp
sudo systemctl start customwebapp
Syslog는 다음을보고합니다.
/opt/customwebapp/bundle/programs/server/node_modules/fibers/future.js:173
Error: URL must be in the format mongodb://user:[email protected]:port/dbname
at Error (<anonymous>)
이 문제를 해결하는 데 몇 시간 씩 노력했습니다. 여러 MONGO_URL 값을 사용했습니다. mongo 명령을 사용하여 MongoDB에서 admin 또는 root 사용자를 생성하고 사용자 : pass @ localhost : 27017/customwebapp 형식을 URL 환경 변수에 넣습니다.
내가 뭘하든 상관없이 동일한 오류가 발생합니다.
나는 Meteor Up을 사용해 보았지만 systemd가 아닌 Upstart를 구성하는 것으로 보인다.
그리고 나는 말할 것도없이 많은 솔루션을 시도해 왔습니다. 내가 시도한 모든 솔루션이 여기에 나열되어있는 것은 아닙니다.
나는 시스템 문제로 인해 문제가 발생했다고 생각합니다.
솔직히 말해서, 내가 가진 대부분의 문제가 내 앞에이 문제를 가지고 있기 때문에 이것은 처음 질문입니다. 그래서 나를 돕기 위해 훌륭하고 여러 번 있습니다. 이제 나는 SO가 다시 도움이되기를 바랍니다.
시간을내어 도와 주셔서 감사합니다.
'URL'이 정확한 것 같습니다. 구성 파일에서 올바른 속성을 읽었는지 확인할 수 있습니까? – BatScream
죄송합니다 BatScream, 어떤 구성 파일에 대해 이야기하고 있습니까? –