added MQTT (libmosquitto1), rebuild buildenv only if needed, more verbose

This commit is contained in:
john30
2017-02-04 12:13:39 +01:00
parent 5fa8dfad23
commit d981fdfb20
5 changed files with 26 additions and 15 deletions
+20 -11
View File
@@ -1,18 +1,27 @@
#!/bin/sh
set -e
stamp=`docker inspect -f '{{.Created}}' ebusd-buildenv `
stamp=`docker inspect -f '{{.Created}}' ebusd-buildenv 2>/dev/null`
if [ -z "$stamp" ] || ( rm -f .stamp && touch -d "$stamp" .stamp && [ buildenv/Dockerfile -nt .stamp ] ) ; then
(cd buildenv && docker build -t ebusd-buildenv .)
echo "updating ebusd build environment..."
docker rmi -f ebusd-buildenv 2>/dev/null
(cd buildenv && docker build -t ebusd-buildenv .) || exit 1
fi
set -e
echo "creating debian image..."
docker run --rm -it -v `pwd`/../..:/build ebusd-buildenv ./make_debian.sh
export EBUSD_VERSION=`cat ../../VERSION`
export EBUSD_ARCH=`docker version|grep -i "Arch[^:]*server"|head -n 1|sed -e 's#^.*/##'`
mv ../../ebusd-${EBUSD_VERSION}_${EBUSD_ARCH}.deb runtime/
mv ../../ebusd-${EBUSD_VERSION}_${EBUSD_ARCH}_mqtt1.deb runtime/
echo "building docker image..."
(cd runtime && docker build -t ebusd .)
echo "docker image created."
echo
echo "to run it interactively on serial device /dev/ttyUSB1:"
echo "docker run --rm -it --device=/dev/ttyUSB1:/dev/ttyUSB0 -p 127.0.0.1:8888:8888 ebusd"
echo
echo "to start it in background on serial device /dev/ttyUSB1:"
echo "docker run device=/dev/ttyUSB1:/dev/ttyUSB0 -p 127.0.0.1:8888:8888 ebusd"
cat <<EOF
docker image created.
to run it interactively on serial device /dev/ttyUSB1:
docker run --rm -it --device=/dev/ttyUSB1:/dev/ttyUSB0 -p 127.0.0.1:8888:8888 ebusd
to start it in background on serial device /dev/ttyUSB1:
docker run device=/dev/ttyUSB1:/dev/ttyUSB0 -p 127.0.0.1:8888:8888 ebusd
when using a network device, the "--device" argument to docker can be omitted:
docker run --rm -it -p 127.0.0.1:8888:8888 ebusd -f --scanconfig -d udp:192.168.178.123:10000 --latency=80000
EOF
+3 -1
View File
@@ -1,6 +1,8 @@
FROM debian
RUN apt-get update
RUN apt-get install -y git autoconf automake g++ make
RUN apt-get install -y libmosquitto-dev
WORKDIR /build
CMD ["/bin/bash"]
CMD ["/bin/bash"]
+3 -3
View File
@@ -1,7 +1,7 @@
FROM debian
RUN apt-get update
RUN apt-get install -y curl
RUN apt-get install -y curl libmosquitto1
LABEL maintainer "ebusd@ebusd.eu"
@@ -11,7 +11,7 @@ RUN mkdir /etc/ebusd \
ENV EBUSD_VERSION 3.0pre
ENV EBUSD_ARCH amd64
COPY ebusd-${EBUSD_VERSION}_${EBUSD_ARCH}.deb ebusd.deb
COPY ebusd-${EBUSD_VERSION}_${EBUSD_ARCH}_mqtt1.deb ebusd.deb
RUN dpkg -i ebusd.deb
@@ -19,4 +19,4 @@ EXPOSE 8888
COPY docker-entrypoint.sh /
ENTRYPOINT ["/docker-entrypoint.sh"]
CMD ["-f", "--scanconfig"]
CMD ["-f", "--scanconfig"]
Binary file not shown.
Binary file not shown.