forked from castisdev/docker-hubot-irc
-
Notifications
You must be signed in to change notification settings - Fork 6
/
Dockerfile
66 lines (54 loc) · 1.66 KB
/
Dockerfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
FROM node:7.5.0
LABEL maintainer "Minishift Team"
ENV REFRESHED_AT 2017-08-22
# Install gobal packages
RUN apt-get update && apt-get install -y libicu-dev
RUN useradd -ms /bin/bash hubot
USER hubot
WORKDIR /home/hubot
# Allow to install npm as non root
RUN echo "prefix = /home/hubot/.npm" > /home/hubot/.npmrc
# Install npm packages
RUN npm install -g yo
RUN npm install hubot && \
npm install coffee-script && \
npm install redis && \
npm install irc && \
npm install hubot-auth && \
npm install hubot-timezone && \
npm install hubot-good-karma && \
npm install nodepie && \
npm install underscore && \
npm install xml2js && \
npm install cron && \
npm install emailjs && \
npm install sugar && \
npm install generator-hubot && \
npm install githubot && \
npm install url && \
npm install querystring && \
npm install csv-parse && \
npm install pad && \
npm install starwars && \
npm install html-entities && \
npm install get-hrefs
# Create Hubot
RUN ~/.npm/bin/yo hubot --owner="Minishift Team" --name="Minibot" --description="Minishift IRC Hubot" --defaults
# Set environment variables
ENV TZ Europe/Stockholm
ENV HUBOT_IRC_NICK minibot
ENV HUBOT_IRC_USERNAME minibot
ENV HUBOT_IRC_ROOMS #minishift
ENV HUBOT_IRC_SERVER irc.freenode.net
ENV HUBOT_IRC_UNFLOOD true
#ENV HUBOT_IRC_DEBUG true
# HTTP Listener port 9009
ENV PORT 9009
EXPOSE 9009
# Add custum scripts
ADD external-scripts.json /home/hubot/external-scripts.json
ADD scripts/*.coffee /home/hubot/scripts/
ADD adapter /home/hubot/adapter
RUN npm link adapter
# Run hubot
ENTRYPOINT ["/home/hubot/bin/hubot", "-a", "irc", "--name", "minibot"]