add docker support (#75)
* add docker support * exit with gateway status on debug mode * Remove timezone variable * remove copying sample config
This commit is contained in:
+37
@@ -0,0 +1,37 @@
|
||||
FROM alpine:3.8
|
||||
|
||||
RUN mkdir application
|
||||
WORKDIR /application
|
||||
ADD . /application
|
||||
|
||||
RUN apk add --no-cache tzdata python3 git bluez glib-dev make bluez-dev bluez-libs musl-dev linux-headers gcc grep && \
|
||||
python3 -m ensurepip && \
|
||||
rm -r /usr/lib/python*/ensurepip && \
|
||||
pip3 install --upgrade pip setuptools && \
|
||||
if [ ! -e /usr/bin/pip ]; then \
|
||||
ln -s pip3 /usr/bin/pip ; \
|
||||
fi && \
|
||||
if [[ ! -e /usr/bin/python ]]; then \
|
||||
ln -sf /usr/bin/python3 /usr/bin/python; \
|
||||
fi && \
|
||||
rm -r /root/.cache && \
|
||||
mkdir /config && \
|
||||
pip install -r requirements.txt && \
|
||||
ln -s /config/config.yaml ./config.yaml && \
|
||||
apk del --no-cache bluez-dev musl-dev gcc make git glib-dev linux-headers grep python2
|
||||
|
||||
RUN apk add --no-cache tzdata python3 git bluez glib-dev make bluez-dev bluez-libs musl-dev linux-headers gcc grep && \
|
||||
grep -P "(?<=REQUIREMENTS).*" workers/*.py | grep -Po "(?<=\[).*(?=\])" | tr ',' '\n' | tr "'" " "| tr "\"" " " > /tmp/requirements.txt && \
|
||||
cat /tmp/requirements.txt && \
|
||||
pip install -r /tmp/requirements.txt && \
|
||||
rm /tmp/requirements.txt && \
|
||||
apk del --no-cache bluez-dev musl-dev gcc make git glib-dev linux-headers grep python2
|
||||
|
||||
ADD ./start.sh /start.sh
|
||||
RUN chmod +x /start.sh
|
||||
|
||||
ENV DEBUG false
|
||||
|
||||
VOLUME ["/config"]
|
||||
|
||||
ENTRYPOINT ["/bin/sh", "-c", "/start.sh"]
|
||||
@@ -0,0 +1,19 @@
|
||||
#!/bin/sh
|
||||
|
||||
if ! [ -f '/config/config.yaml' ]; then
|
||||
echo "There is no config.yaml! An example is created."
|
||||
cp /application/config.yaml.example /config/config.yaml.example
|
||||
exit 1
|
||||
fi
|
||||
|
||||
cd /application
|
||||
if [ "$DEBUG" = 'true' ]; then
|
||||
echo "Start in debug mode"
|
||||
python3 ./gateway.py -d
|
||||
status=$?
|
||||
echo "Gateway died..."
|
||||
exit $status
|
||||
else
|
||||
echo "Start in normal mode"
|
||||
python3 ./gateway.py
|
||||
fi
|
||||
Reference in New Issue
Block a user