mirror of
https://github.com/home-assistant/core.git
synced 2025-12-25 13:38:04 +00:00
* Build libcec for Docker image * Update development dockerfile as well * Dynamically load python paths for current version
60 lines
1.9 KiB
Docker
60 lines
1.9 KiB
Docker
# Dockerfile for development
|
|
# Based on the production Dockerfile, but with development additions.
|
|
# Keep this file as close as possible to the production Dockerfile, so the environments match.
|
|
|
|
FROM python:3.5
|
|
MAINTAINER Paulus Schoutsen <Paulus@PaulusSchoutsen.nl>
|
|
|
|
VOLUME /config
|
|
|
|
RUN mkdir -p /usr/src/app
|
|
WORKDIR /usr/src/app
|
|
|
|
RUN pip3 install --no-cache-dir colorlog cython
|
|
|
|
# For the nmap tracker, bluetooth tracker, Z-Wave, tellstick
|
|
RUN echo "deb http://download.telldus.com/debian/ stable main" >> /etc/apt/sources.list.d/telldus.list && \
|
|
wget -qO - http://download.telldus.se/debian/telldus-public.key | apt-key add - && \
|
|
apt-get update && \
|
|
apt-get install -y --no-install-recommends nmap net-tools cython3 libudev-dev sudo libglib2.0-dev bluetooth libbluetooth-dev \
|
|
libtelldus-core2 cmake libxrandr-dev swig && \
|
|
apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
|
|
|
|
COPY script/build_python_openzwave script/build_python_openzwave
|
|
RUN script/build_python_openzwave && \
|
|
mkdir -p /usr/local/share/python-openzwave && \
|
|
ln -sf /usr/src/app/build/python-openzwave/openzwave/config /usr/local/share/python-openzwave/config
|
|
|
|
COPY script/build_libcec script/build_libcec
|
|
RUN script/build_libcec
|
|
|
|
COPY requirements_all.txt requirements_all.txt
|
|
RUN pip3 install --no-cache-dir -r requirements_all.txt && \
|
|
pip3 install --no-cache-dir mysqlclient psycopg2 uvloop
|
|
|
|
# BEGIN: Development additions
|
|
|
|
# Install nodejs
|
|
RUN curl -sL https://deb.nodesource.com/setup_7.x | sudo -E bash - && \
|
|
apt-get install -y nodejs
|
|
|
|
# Install tox
|
|
RUN pip3 install --no-cache-dir tox
|
|
|
|
# Copy over everything required to run tox
|
|
COPY requirements_test.txt .
|
|
COPY setup.cfg .
|
|
COPY setup.py .
|
|
COPY tox.ini .
|
|
COPY homeassistant/const.py homeassistant/const.py
|
|
|
|
# Get all dependencies
|
|
RUN tox -e py35 --notest
|
|
|
|
# END: Development additions
|
|
|
|
# Copy source
|
|
COPY . .
|
|
|
|
CMD [ "python", "-m", "homeassistant", "--config", "/config" ]
|