diff --git a/.gitignore b/.gitignore index a950e86..db0d25d 100644 --- a/.gitignore +++ b/.gitignore @@ -6,4 +6,14 @@ *.egg-info pokedex.sqlite +pokedex.sqlite-journal whoosh-index +pip-selfcheck.json + +/bin +!/bin/edit-csv-as-yaml +!/bin/poupdate +!/bin/reset-postgresql-sequences +/local +/lib +/include diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..7d01801 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,23 @@ +FROM python:2.7-slim + +RUN echo "Upgrading distro..." && \ + apt-get update > /dev/null && \ + apt-get upgrade -y > /dev/null && \ + echo "Installing dependencies..." && \ + apt-get install -y git python-distribute > /dev/null && \ + pip install --no-cache-dir virtualenv psycopg2 pymysql > /dev/null && \ + echo "Optimizing space..." && \ + apt-get remove --purge -y software-properties-common > /dev/null && \ + apt-get autoremove -y > /dev/null && \ + apt-get clean > /dev/null && \ + apt-get autoclean > /dev/null && \ + echo -n > /var/lib/apt/extended_states && \ + rm -rf /var/lib/apt/lists/* && \ + rm -rf /usr/share/man/?? && \ + rm -rf /usr/share/man/??_* + +COPY ./docker-entrypoint.sh /docker-entrypoint +RUN chmod +x /docker-entrypoint + +ENTRYPOINT ["/docker-entrypoint"] +CMD ["status"] \ No newline at end of file diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..dbe6a8e --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,6 @@ +version: '3' +services: + pokedex: + build: ./ + volumes: + - ./:/project diff --git a/docker-entrypoint.sh b/docker-entrypoint.sh new file mode 100755 index 0000000..bd3b694 --- /dev/null +++ b/docker-entrypoint.sh @@ -0,0 +1,21 @@ +#!/usr/bin/env bash +set -e + +POKEDEX_DIR=${POKEDEX_DIR:-"/project"} + +cd ${POKEDEX_DIR} + +if [ ! -f "${POKEDEX_DIR}/bin/python" ] || [ ! -f "${POKEDEX_DIR}/bin/pokedex" ] ; then + echo "Building the bin/pokedex executable ..." + virtualenv $POKEDEX_DIR --python=python2 + bin/python setup.py develop +fi + +case "$1" in + "") bin/pokedex help + ;; + "exec") exec ${@:2} + ;; + *) bin/pokedex $@ + ;; +esac diff --git a/docker-pokedex b/docker-pokedex new file mode 100755 index 0000000..439be09 --- /dev/null +++ b/docker-pokedex @@ -0,0 +1,3 @@ +#!/usr/bin/env bash + +docker-compose run --rm pokedex "$@" \ No newline at end of file