mirror of
https://github.com/ViViDboarder/docker-rpi-homebridge.git
synced 2024-12-22 09:27:37 +00:00
Fix avahi and clean build
This commit is contained in:
parent
9649305adf
commit
aca2060e7b
17
Dockerfile
17
Dockerfile
@ -7,11 +7,13 @@ ENV LC_ALL en_US.UTF-8
|
|||||||
|
|
||||||
RUN apt-get update
|
RUN apt-get update
|
||||||
RUN apt-get install -y --no-install-recommends \
|
RUN apt-get install -y --no-install-recommends \
|
||||||
build-essential \
|
|
||||||
avahi-daemon \
|
avahi-daemon \
|
||||||
avahi-discover \
|
avahi-discover \
|
||||||
libnss-mdns \
|
build-essential \
|
||||||
libavahi-compat-libdnssd-dev
|
libavahi-compat-libdnssd-dev \
|
||||||
|
libnss-mdns && \
|
||||||
|
apt-get clean && \
|
||||||
|
rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
|
||||||
|
|
||||||
RUN npm install -g --unsafe-perm \
|
RUN npm install -g --unsafe-perm \
|
||||||
homebridge \
|
homebridge \
|
||||||
@ -22,11 +24,16 @@ RUN npm install -g --unsafe-perm \
|
|||||||
cd /usr/local/lib/node_modules/hap-nodejs/node_modules/mdns && \
|
cd /usr/local/lib/node_modules/hap-nodejs/node_modules/mdns && \
|
||||||
node-gyp BUILDTYPE=Release rebuild
|
node-gyp BUILDTYPE=Release rebuild
|
||||||
|
|
||||||
|
EXPOSE 5353 51826
|
||||||
|
|
||||||
|
RUN mkdir -p /var/run/dbus/
|
||||||
|
|
||||||
USER root
|
USER root
|
||||||
|
|
||||||
RUN mkdir -p /root/.homebridge
|
RUN mkdir -p /root/.homebridge
|
||||||
VOLUME /root/.homebridge
|
VOLUME /root/.homebridge
|
||||||
WORKDIR /root/.homebridge
|
WORKDIR /root/.homebridge
|
||||||
|
|
||||||
EXPOSE 5353 51826
|
ADD start.sh /root/.homebridge/start.sh
|
||||||
|
|
||||||
CMD cat /root/.homebridge/plugins.txt | xargs npm install -g --unsafe-perm && homebridge
|
CMD /root/.homebridge/start.sh
|
||||||
|
23
Makefile
23
Makefile
@ -1,14 +1,29 @@
|
|||||||
build:
|
default: build
|
||||||
docker build -t rpi-homebridge .
|
|
||||||
|
|
||||||
|
# Default target to build the image
|
||||||
|
build:
|
||||||
|
docker build -t rpi-homebridge-dev .
|
||||||
|
|
||||||
|
# Target to build and run and subsequently remove image
|
||||||
run: build
|
run: build
|
||||||
docker run --net=host --rm \
|
docker run --net=host --rm \
|
||||||
|
-p "localhost:51826:51826"
|
||||||
-v "$(shell pwd)/config.json:/root/.homebridge/config.json" \
|
-v "$(shell pwd)/config.json:/root/.homebridge/config.json" \
|
||||||
-v "$(shell pwd)/plugins.txt:/root/.homebridge/plugins.txt" \
|
-v "$(shell pwd)/plugins.txt:/root/.homebridge/plugins.txt" \
|
||||||
rpi-homebridge
|
rpi-homebridge-dev
|
||||||
|
|
||||||
|
# Target to drop into an interractive shell
|
||||||
shell: build
|
shell: build
|
||||||
docker run --net=host --rm \
|
docker run --net=host --rm \
|
||||||
|
-p "localhost:51826:51826"
|
||||||
-v "$(shell pwd)/config.json:/root/.homebridge/config.json" \
|
-v "$(shell pwd)/config.json:/root/.homebridge/config.json" \
|
||||||
-v "$(shell pwd)/plugins.txt:/root/.homebridge/plugins.txt" \
|
-v "$(shell pwd)/plugins.txt:/root/.homebridge/plugins.txt" \
|
||||||
-it rpi-homebridge bash
|
-it rpi-homebridge-dev bash
|
||||||
|
|
||||||
|
# Tags dev image so it can be pushed
|
||||||
|
tag: build
|
||||||
|
docker tag rpi-homebridge-dev vividboarder/rpi-homebridge
|
||||||
|
|
||||||
|
# Pushes tagged image to docker hub
|
||||||
|
push: tag
|
||||||
|
docker push vividboarder/rpi-homebridge
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
homebridge:
|
homebridge:
|
||||||
build: .
|
build: .
|
||||||
|
ports:
|
||||||
|
- "51826:51826"
|
||||||
net: host
|
net: host
|
||||||
volumes:
|
volumes:
|
||||||
- ./config.json:/root/.homebridge/config.json
|
- ./config.json:/root/.homebridge/config.json
|
||||||
|
14
start.sh
Executable file
14
start.sh
Executable file
@ -0,0 +1,14 @@
|
|||||||
|
#! /bin/sh
|
||||||
|
|
||||||
|
# Fix avahi
|
||||||
|
sed -i "s/rlimit-nproc=3/#rlimit-nproc=3/" /etc/avahi/avahi-daemon.conf
|
||||||
|
dbus-daemon --system
|
||||||
|
avahi-daemon -D
|
||||||
|
service dbus start
|
||||||
|
service avahi-daemon start
|
||||||
|
|
||||||
|
# Install desired plugins
|
||||||
|
cat /root/.homebridge/plugins.txt | xargs npm install -g --unsafe-perm
|
||||||
|
|
||||||
|
# Start service
|
||||||
|
homebridge
|
Loading…
Reference in New Issue
Block a user