-
Notifications
You must be signed in to change notification settings - Fork 3
/
Dockerfile.old
91 lines (60 loc) · 2.44 KB
/
Dockerfile.old
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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
FROM resin/rpi-raspbian:jessie-20160831
MAINTAINER sejnub
ENV port 7072
# See https://debian.fhem.de/ and https://forum.fhem.de/index.php?topic=27679.0 for details
# Update your package administration:
RUN apt-get update
#### Install needed tools ####
# Install packages taht are needed when building the image with this Dockerfile
RUN apt-get -qy install apt-utils \
apt-transport-https \
wget
#### Install commodities ####
# Just for development. Not needed for production
RUN apt-get -qy install mc
#### Install fhem ####
# At the moment the following way is broken
# Import repository gpg key:
#RUN wget -qO - https://debian.fhem.de/archive.key | apt-key add -
# Add repository to /etc/apt/sources.list:
#RUN echo "deb https://debian.fhem.de/stable ./" | tee -a /etc/apt/sources.list
# Update your package administration:
#RUN apt-get update
#RUN apt-get -qy install fhem
# so (because it's broken) I install the package directly
WORKDIR /opt/fhem
# Manually install dependencies (not needed when installing fhem via apt-get install
RUN apt-get -qy install \
libdevice-serialport-perl \
libwww-perl \
libio-socket-ssl-perl \
libcgi-pm-perl \
libjson-perl \
sqlite3 \
libdbd-sqlite3-perl \
libtext-diff-perl
# Install the perl module Module::Pluggable
# 'make' is needed for the cpan install of Module::Pluggable
RUN apt-get -qy install make
RUN export PERL_MM_USE_DEFAULT=1 && \
cpan -i Module::Pluggable
# and now for FHEM itself
RUN wget http://fhem.de/fhem-5.8.deb
RUN dpkg -i fhem-5.8.deb
RUN rm fhem-5.8.deb
#### Configure FHEM ####
# Some additions to the standard fhem.cfg
RUN echo 'attr global nofork 1\n' >> /opt/fhem/fhem.cfg && \
echo 'attr WEB editConfig 1\n' >> /opt/fhem/fhem.cfg && \
echo 'attr WEB csrfToken none\n' >> /opt/fhem/fhem.cfg && \
echo 'attr WEBphone csrfToken none\n' >> /opt/fhem/fhem.cfg && \
echo 'attr WEBtablet csrfToken none\n' >> /opt/fhem/fhem.cfg
#### docker stuff ####
EXPOSE 8083 8084 8085 7072
# Some info about which user should start fhem: https://forum.fhem.de/index.php?topic=53586.0
#
# In fhem.pl there is the code:
# # If started as root, and there is a fhem user in the /etc/passwd, su to it
# if($^O !~ m/Win/ && $< == 0) {
# ...
CMD perl fhem.pl fhem.cfg