Switch branches/tags
Nothing to show
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
112 lines (100 sloc) 3.33 KB
Nodester - A node.js hosting platform
node.js (Latest stable version 0.4.0)
node.js Modules:
# http-proxy -- Included in libs/3rdparty due to changes at are not in upstream yet
Install node.js (0.4.x recommended)
Package from distro
OR wget, ./configure, make, make install
Create a user and group to run nodester as
sudo su -
groupadd -g 501 nodester
useradd -d /var/nodester -c "nodester" -g nodester -m -r -s /bin/bash -u 501 nodester
passwd nodester
Login to that account and ensure that .ssh/authorized_keys exists
ssh nodester@yourhost
cd ~
mkdir .ssh
touch .ssh/authorized_keys
chmod go-rwx .ssh/authorized_keys
Update sudoers to allow running of the proxy on port 80
sudo visudo
And add the following lines
nodester ALL = NOPASSWD: /var/nodester/nodester/proxy/ *
nodester ALL = NOPASSWD: /var/nodester/nodester/proxy/
nodester ALL = NOPASSWD: /var/nodester/nodester/scripts/ *
Install npm
cd ~
echo -e "root = ~/.node_libraries\nmanroot = ~/local/share/man\nbinroot = ~/bin" > ~/.npmrc
echo -e "export PATH=\"\${PATH}:~/bin\";" >> ~/.bashrc
source ~/.bashrc
##This part is a hack to use the old npm with the new node until
## certain packages can catch up and be installed with npm@0.3.x
mkdir ~/src
cd src
git clone git:// ./npm
cd npm
git checkout origin/0.2
make dev
##Fetch 0.2.6 version of node for npm
cd ~/src
sudo mkdir -p /usr/local/n/versions/
tar -vzxr node-v0.2.6.tar.gz
cd node-v0.2.6
./configure --prefix=/usr/local/n/versions/0.2.6
sudo make install
cd ~/bin
cp npm\@0.2.18 nodester-npm
vim nodester-npm
"Replace '#!/usr/bin/env node' with '#!/usr/local/n/versions/0.2.6/bin/node'
Either install CouchDB or get a CouchOne account
Install node-module dependencies
for X in pool express npm-wrapper request daemon forever cradle; do npm install ${X}; done
Get nodester
cd ~
git clone git://
cd nodester
(Need to do these steps as the non-nodester user)
Ensure that the ownership of nodester/proxy is all root for security
cd /var/nodester
sudo chown -R root:root nodester/proxy
Install the git folder shell to restrict git to per user folders
cd /var/nodester/nodester
sudo cp scripts/git-shell-enforce-directory /usr/local/bin
sudo chmod +x /usr/local/bin/git-shell-enforce-directory
(Back to the nodester user)
Configure the app
Copy nodester/example_config.js to nodester/config.js
Edit the settings in nodester/config.js
Copy scripts/ to scripts/
Update scripts/ with the key you specified in config.js
Setup the CouchDB tables
cd ./nodester/scripts/couchdb
Start up the proxy and main/api app
cd nodester
sudo ./bin/
Test the web frontend at
Create a user
Create an app
Start the app
Test the app