Skip to content

Commit

Permalink
initial commit from eldios
Browse files Browse the repository at this point in the history
  • Loading branch information
System Administrator committed Dec 28, 2011
1 parent b3b9bd7 commit 10ae3af
Show file tree
Hide file tree
Showing 4 changed files with 61 additions and 32 deletions.
16 changes: 15 additions & 1 deletion README.md
@@ -1,7 +1,21 @@
# NNi - nodester npm installer
# Nodester Installer

Note: These scripts are still under development

## Description
This is the nodester npm cross-platform intaller (Linux & MacOSX)

## Disclaimer
**WARNING**
We're not responsible for whatever injuries/damage you could get from/by this script. Included but not limited to fried cats, zombie relatives or your fiacee suddenly turning nerdy.

## Steps
Verify your environment dependencies by running "./dependencies_verify.sh"
Install all missing NPM modules using "npm install -g"
Run "sudo su"
Run "./env_creation.sh"

## Need Help?

* Hit us up in IRC at irc.freenode.net #nodester or http://irc.nodester.com
* You can also ask questions and provide feedback in our google group at http://groups.google.com/group/nodester
2 changes: 1 addition & 1 deletion dependencies_verify.sh
Expand Up @@ -6,7 +6,7 @@ declare -a sys_dependencies
sys_dependencies=("node" "npm" "curl")
# define your npm dependencies here
declare -a npm_modules_dependencies
npm_modules_dependencies=("pool" "express" "request" "npm-wrapper" "daemon" "forever" "cradle")
npm_modules_dependencies=("pool" "express" "request" "npm-wrapper" "daemon" "cradle" "connect" "coffee-script" "colors" "nodemailer" "bouncy" "nodeinfo")

# color used for printing
use_color=true
Expand Down
56 changes: 31 additions & 25 deletions nodester_official_install_guide.txt
@@ -1,7 +1,10 @@
PLEASE NOTE - THIS IS HORRIBLY OUT OF DATE, UPDATED INSTALL INSTRUCTIONS AND A STREAMLINED INSTALL PROCESS WILL BE DONE SOON

Nodester - A node.js hosting platform

Dependencies:
node.js (Latest stable version 0.4.0)
bouncy
node.js
npm
curl
node.js Modules:
Expand All @@ -13,29 +16,34 @@ Dependencies:
daemon
forever
cradle
coloured
coffee-script

Installation:
Install node.js (0.4.x recommended)
Package from distro
Package from distro at http://nodejs.org
OR wget, ./configure, make, make install
Create a user and group to run nodester as
Install Git
Package from distro at http://git-scm.com/download
Create a user and group to run nodester as (do this as root)
sudo su -
groupadd -g 501 nodester
useradd -d /var/nodester -c "nodester" -g nodester -m -r -s /bin/bash -u 501 nodester
groupadd nodester
useradd -d /var/nodester -c "nodester" -g nodester -m -r -s /bin/bash 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
Update sudoers to allow running of the proxy on port 80 (do this as root)
sudo visudo
And add the following lines
nodester ALL = NOPASSWD: /var/nodester/nodester/proxy/start_proxy.sh *
nodester ALL = NOPASSWD: /var/nodester/nodester/proxy/stop.sh
nodester ALL = NOPASSWD: /var/nodester/nodester/scripts/launch_app.sh *
Install npm
nodester ALL = NOPASSWD: /var/nodester/nodester/bin/proxy_start.sh *
nodester ALL = NOPASSWD: /var/nodester/nodester/bin/proxy_stop.sh
nodester ALL = NOPASSWD: /var/nodester/nodester/bin/app_start.sh *
nodester ALL = NOPASSWD: /var/nodester/nodester/bin/app_stop.sh *
Install npm (do this as nodester)
cd ~
echo -e "root = ~/.node_libraries\nmanroot = ~/local/share/man\nbinroot = ~/bin" > ~/.npmrc
echo -e "export PATH=\"\${PATH}:~/bin\";" >> ~/.bashrc
Expand All @@ -50,7 +58,7 @@ Installation:
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/
Expand All @@ -68,34 +76,32 @@ Installation:

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
Install node-module dependencies (do this as nodester)
for X in pool express npm-wrapper request daemon forever cradle coloured; do npm install ${X}; done

Get nodester (do this as nodester)
cd ~
git clone git://github.com/nodester/nodester.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
Ensure that the ownership of nodester/proxy is all root for security (do this as root)
cd /var/nodester
sudo chown -R root:root nodester/proxy
Install the git folder shell to restrict git to per user folders
Install the git folder shell to restrict git to per user folders (do this as root)
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

Configure the app (do this as nodester)
Copy nodester/example_config.js to nodester/config.js
Edit the settings in nodester/config.js
Copy scripts/example_gitrepoclone.sh to scripts/gitrepoclone.sh
Update scripts/gitrepoclone.sh with the key you specified in config.js
Setup the CouchDB tables
cd ./nodester/scripts/couchdb
Setup the CouchDB tables (do this as nodester)
cd ./nodester/scripts/couchdb/create_all_couchdb_tables.js
./create_all_couchdb_tables.js
./setup_default_views.js
Start up the proxy and main/api app
./nodester/scripts/couchdb/setup_default_views.js
Start up the proxy and main/api app (do this as nodester)
cd nodester
./bin/app_start.sh
sudo ./bin/proxy_start.sh
Expand Down
19 changes: 14 additions & 5 deletions package.json
Expand Up @@ -7,18 +7,27 @@
"author": { "name": "ChrisMatthieu", url:"twitter.com/chrismatthieu" },
"contributors": [
{ "name": "ChrisMatthieu", url:"twitter.com/chrismatthieu" },
{ "name": "DavGlass", url:"twitter.com/davglass" },
{ "name": "DanBUK", url:"twitter.com/danbuk" },
{ "name": "Marcosvm" url:"twitter.com/marcosvm" },
{ "name": "eldios", url:"twitter.com/eldios", "email": "lele@amicofigo.com" }
],
"dependencies": {
"connect": ">= 1.4.0 < 2.0.0"
"connect": ">= 1.4.0",
"coffee-script":"*",
"colors":"*",
"nodemailer":"*",
"pool":"*",
"express":"*",
"request":"*",
"npm-wrapper":"*",
"bouncy":"*",
"cradle":"*",
"nodeinfo":"*",
"socket.io":"*",
"bouncy":"*",
"daemon":"*"
},
"repository": "http://github.com/nodester/nodester",
"scripts": {
{
"preinstall": "scripts/dependencies_verify.sh",
"preinstall": "scripts/dependencies_verify.sh",
"install": "scripts/env_creation.sh
}
Expand Down

0 comments on commit 10ae3af

Please sign in to comment.