aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMhd Sulhan <ms@kilabit.info>2016-01-14 17:32:08 +0700
committerMhd Sulhan <ms@kilabit.info>2016-01-14 17:32:08 +0700
commitf6936f89a0b620bc65050d83aa2ea9a1bcb32655 (patch)
tree7e92667414c3fb17bad475430e0352a94b38ea3d
parent9401962b4b492f8c0c165a351d58587f86828acd (diff)
downloadarch-docker-f6936f89a0b620bc65050d83aa2ea9a1bcb32655.tar.xz
Add new image for sailsjs stack with nodejs 0.12.9.
This image include: pm2, grunt-cli, gulp, bower.
-rw-r--r--.gitignore3
l---------arch-base-nodejs-0.12.9/00_create_rootfs.sh1
l---------arch-base-nodejs-0.12.9/01_create_image.sh1
l---------arch-base-nodejs-0.12.9/02_clean.sh1
-rwxr-xr-xarch-base-nodejs-0.12.9/bootstrap_base_nodejs.sh32
-rwxr-xr-xarch-base-nodejs-0.12.9/init.sh15
-rwxr-xr-xarch-base-nodejs-0.12.9/nvm.sh4
-rw-r--r--arch-base-nodejs-0.12.9/pm2.json11
-rw-r--r--arch-base-nodejs-0.12.9/run_api.sh3
-rwxr-xr-xarch-base-nodejs-0.12.9/vars.sh23
10 files changed, 94 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index 3d22c90..58d8153 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,4 +1,7 @@
arch-base-mongodb/data.mongodb
+arch-base-nodejs-0.12.9/npm
+arch-base-nodejs-0.12.9/nvm
+arch-base-redis/data.redis
*/arch-rootfs
*/data
*/env
diff --git a/arch-base-nodejs-0.12.9/00_create_rootfs.sh b/arch-base-nodejs-0.12.9/00_create_rootfs.sh
new file mode 120000
index 0000000..54a9807
--- /dev/null
+++ b/arch-base-nodejs-0.12.9/00_create_rootfs.sh
@@ -0,0 +1 @@
+../scripts/create_rootfs.sh \ No newline at end of file
diff --git a/arch-base-nodejs-0.12.9/01_create_image.sh b/arch-base-nodejs-0.12.9/01_create_image.sh
new file mode 120000
index 0000000..ec69652
--- /dev/null
+++ b/arch-base-nodejs-0.12.9/01_create_image.sh
@@ -0,0 +1 @@
+../scripts/create_image.sh \ No newline at end of file
diff --git a/arch-base-nodejs-0.12.9/02_clean.sh b/arch-base-nodejs-0.12.9/02_clean.sh
new file mode 120000
index 0000000..1e93f10
--- /dev/null
+++ b/arch-base-nodejs-0.12.9/02_clean.sh
@@ -0,0 +1 @@
+../scripts/clean.sh \ No newline at end of file
diff --git a/arch-base-nodejs-0.12.9/bootstrap_base_nodejs.sh b/arch-base-nodejs-0.12.9/bootstrap_base_nodejs.sh
new file mode 100755
index 0000000..fbbe38b
--- /dev/null
+++ b/arch-base-nodejs-0.12.9/bootstrap_base_nodejs.sh
@@ -0,0 +1,32 @@
+#!/bin/sh
+
+NVM_DIR=/root/.nvm
+NODE_VERSION=v0.12.9
+
+[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"
+
+## create symlink to python
+cd /usr/bin && ln -s python2 python
+cd
+
+nvm install ${NODE_VERSION}
+nvm alias default ${NODE_VERSION}
+nvm use default
+
+## Set path
+export PATH=$PATH:`npm bin -g`
+
+echo ">>> installing pm2"
+npm install -g pm2
+
+echo ">>> installing grunt-cli"
+npm install -g grunt-cli
+
+echo ">>> installing gulp"
+npm install -g gulp
+
+echo ">>> installing bower"
+npm install -g bower
+
+echo ">>> installing sails"
+npm install -g sails --ignore-scripts
diff --git a/arch-base-nodejs-0.12.9/init.sh b/arch-base-nodejs-0.12.9/init.sh
new file mode 100755
index 0000000..c019162
--- /dev/null
+++ b/arch-base-nodejs-0.12.9/init.sh
@@ -0,0 +1,15 @@
+#!/bin/bash
+
+WORKDIR=${WORKDIR:-"/srv/www"}
+COMMANDS=${COMMANDS:-"pm2 --no-daemon start /pm2.json"}
+NODE_ENV=${NODE_ENV:-"development"}
+
+NVM_DIR=/root/.nvm
+. "$NVM_DIR/nvm.sh"
+nvm use node
+
+cd $WORKDIR
+
+npm install
+
+eval $COMMANDS
diff --git a/arch-base-nodejs-0.12.9/nvm.sh b/arch-base-nodejs-0.12.9/nvm.sh
new file mode 100755
index 0000000..5c1968d
--- /dev/null
+++ b/arch-base-nodejs-0.12.9/nvm.sh
@@ -0,0 +1,4 @@
+#!/bin/sh
+
+export NVM_DIR="/root/.nvm"
+[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"
diff --git a/arch-base-nodejs-0.12.9/pm2.json b/arch-base-nodejs-0.12.9/pm2.json
new file mode 100644
index 0000000..daef8af
--- /dev/null
+++ b/arch-base-nodejs-0.12.9/pm2.json
@@ -0,0 +1,11 @@
+{
+ "apps":
+ [{
+ "name" : "proofn"
+ , "script" : "app.js"
+ , "watch" : false
+ , "cwd" : "/srv/www"
+ , "max_memory_restart": "256M"
+ , "log_date_format" : "YYYY-MM-DD HH:mm:ss"
+ }]
+}
diff --git a/arch-base-nodejs-0.12.9/run_api.sh b/arch-base-nodejs-0.12.9/run_api.sh
new file mode 100644
index 0000000..9cd2150
--- /dev/null
+++ b/arch-base-nodejs-0.12.9/run_api.sh
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+docker run --env-file=env.api --net=host --rm -v $PWD/npm:/root/.npm -v $PWD/src.api:/srv/www -it sulhan/arch-nodejs-0.12.9
diff --git a/arch-base-nodejs-0.12.9/vars.sh b/arch-base-nodejs-0.12.9/vars.sh
new file mode 100755
index 0000000..5f28aeb
--- /dev/null
+++ b/arch-base-nodejs-0.12.9/vars.sh
@@ -0,0 +1,23 @@
+#!/bin/zsh
+
+THISD=${0:a:h}
+
+ROOTFS_SIZE=900M
+
+PKGS+=(util-linux)
+PKGS_ADD+=(awk gcc git grep make python2)
+PKGS_REMOVED=()
+
+IMAGE_NAME="sulhan/arch-nodejs-0.12.9"
+IMAGE_ARGS=(-c="VOLUME /srv/www" -c="VOLUME /root/.npm" -c="EXPOSE 80"
+ -c="CMD /init.sh")
+IMAGE_FILES_BAK+=("${ROOTFS}/root/.npm" "${THISD}/npm")
+
+FILES+=("${THISD}/init.sh" "${ROOTFS}/")
+FILES+=("${THISD}/bootstrap_base_nodejs.sh" "${ROOTFS}/")
+FILES+=("${THISD}/npm" "${ROOTFS}/root/.npm")
+FILES+=("${THISD}/nvm" "${ROOTFS}/root/.nvm")
+FILES+=("${THISD}/nvm.sh" "${ROOTFS}/etc/profile.d/")
+FILES+=("${THISD}/pm2.json" "${ROOTFS}/")
+
+BOOTSTRAP_S+=("/bootstrap_base_nodejs.sh")