Install Python 3.5 and 3.6 on docker container
To cover all supported versions of Python using Tox
This commit is contained in:
parent
420554c737
commit
16f5914c90
|
@ -1,6 +0,0 @@
|
||||||
FROM python:3.6
|
|
||||||
|
|
||||||
ADD . /app
|
|
||||||
WORKDIR /app
|
|
||||||
|
|
||||||
RUN pip install tox
|
|
2
Makefile
2
Makefile
|
@ -1,4 +1,4 @@
|
||||||
test:
|
test:
|
||||||
find . -name "*.pyc" -delete
|
find . -name "*.pyc" -delete
|
||||||
docker build -t sanic/test-image .
|
docker build -t sanic/test-image -f docker/Dockerfile .
|
||||||
docker run -t sanic/test-image tox
|
docker run -t sanic/test-image tox
|
||||||
|
|
28
docker/Dockerfile
Normal file
28
docker/Dockerfile
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
FROM alpine:3.7
|
||||||
|
|
||||||
|
RUN apk add --no-cache --update \
|
||||||
|
curl \
|
||||||
|
bash \
|
||||||
|
build-base \
|
||||||
|
ca-certificates \
|
||||||
|
git \
|
||||||
|
bzip2-dev \
|
||||||
|
linux-headers \
|
||||||
|
ncurses-dev \
|
||||||
|
openssl \
|
||||||
|
openssl-dev \
|
||||||
|
readline-dev \
|
||||||
|
sqlite-dev
|
||||||
|
|
||||||
|
RUN update-ca-certificates
|
||||||
|
RUN rm -rf /var/cache/apk/*
|
||||||
|
|
||||||
|
ENV PYENV_ROOT="/root/.pyenv"
|
||||||
|
ENV PATH="$PYENV_ROOT/bin:$PATH"
|
||||||
|
|
||||||
|
ADD . /app
|
||||||
|
WORKDIR /app
|
||||||
|
|
||||||
|
RUN /app/docker/bin/install_python.sh 3.5.4 3.6.4
|
||||||
|
|
||||||
|
ENTRYPOINT ["./docker/bin/entrypoint.sh"]
|
11
docker/bin/entrypoint.sh
Executable file
11
docker/bin/entrypoint.sh
Executable file
|
@ -0,0 +1,11 @@
|
||||||
|
#!/bin/bash
|
||||||
|
set -e
|
||||||
|
|
||||||
|
eval "$(pyenv init -)"
|
||||||
|
eval "$(pyenv virtualenv-init -)"
|
||||||
|
source /root/.pyenv/completions/pyenv.bash
|
||||||
|
|
||||||
|
pip install tox
|
||||||
|
|
||||||
|
exec $@
|
||||||
|
|
17
docker/bin/install_python.sh
Executable file
17
docker/bin/install_python.sh
Executable file
|
@ -0,0 +1,17 @@
|
||||||
|
#!/bin/bash
|
||||||
|
set -e
|
||||||
|
|
||||||
|
export CFLAGS='-O2'
|
||||||
|
export EXTRA_CFLAGS="-DTHREAD_STACK_SIZE=0x100000"
|
||||||
|
|
||||||
|
curl -L https://raw.githubusercontent.com/pyenv/pyenv-installer/master/bin/pyenv-installer | bash
|
||||||
|
eval "$(pyenv init -)"
|
||||||
|
|
||||||
|
for ver in $@
|
||||||
|
do
|
||||||
|
pyenv install $ver
|
||||||
|
done
|
||||||
|
|
||||||
|
pyenv global $@
|
||||||
|
pip install --upgrade pip
|
||||||
|
pyenv rehash
|
Loading…
Reference in New Issue
Block a user