Public Repository

Last pushed: 2 years ago
Short Description
Container with node, nodemon, express and yo
Full Description

FROM node:5.3.0

MAINTAINER André Fellows fellows.devel@gmail.com

ENV DEBIAN_FRONTEND noninteractive

RUN apt-get -yq update && \
apt-get -yq install git net-tools bzip2 tar build-essential python ruby-compass && \
apt-get clean && \
rm -rf /var/lib/apt/lists/ /tmp/ /var/tmp/*

RUN gem install compass

########################

Basic node tools

########################
RUN npm install -g nodemon && \
npm install -g express && \
npm install -g express-generator

########################

Yeoman generators dependencies

########################

#RUN npm install -g jasmine-core && \

npm install -g karma && \

npm install -g phantomjs && \

npm install -g lodash

########################

Yeoman YO base install

########################
RUN npm install -g yo && \
npm install -g bower && \
npm install -g grunt-cli && \
npm install -g gulp

########################

Yeoman generators

########################
RUN npm install -g generator-webapp && \
npm install -g generator-angular && \
npm install -g generator-karma && \
npm install -g generator-gulp-angular

Add a yeoman user because grunt doesn't like being root

RUN adduser --disabled-password --gecos "" yeoman && \
echo "yeoman ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers

Expose the port

EXPOSE 3000 5000 9000

set HOME so 'npm install' and 'bower install' don't write to /

ENV HOME /home/yeoman
ENV LANG en_US.UTF-8

RUN mkdir /src && chown yeoman:yeoman /src

WORKDIR /src

ADD set_env.sh /usr/local/sbin/

RUN chmod +x /usr/local/sbin/set_env.sh

ENTRYPOINT ["set_env.sh"]

Always run as the yeoman user

USER yeoman

CMD /bin/bash

Docker Pull Command
Owner
fellowsdevel