Initial commit
This commit is contained in:
commit
e2ec4adcbf
|
@ -0,0 +1,9 @@
|
|||
VERSION := $(shell git describe --tags --exact-match 2>/dev/null || echo latest)
|
||||
DOCKERHUB_NAMESPACE ?= keitaro
|
||||
IMAGE := ${DOCKERHUB_NAMESPACE}/ckan:${VERSION}
|
||||
|
||||
build:
|
||||
docker build -t ${IMAGE} rootfs
|
||||
|
||||
push: build
|
||||
docker push ${IMAGE}
|
|
@ -0,0 +1,51 @@
|
|||
FROM keitaro/base:0.1
|
||||
|
||||
MAINTAINER Keitaro Inc <info@keitaro.info>
|
||||
|
||||
ENV APP_DIR=/srv/app
|
||||
ENV GIT_URL=https://github.com/ckan/ckan.git
|
||||
ENV GIT_BRANCH=release-v2.5.2
|
||||
ENV APP_WSGI=ckan.wsgi
|
||||
ENV CKAN_SITE_URL=http://localhost
|
||||
ENV CKAN__PLUGINS image_view text_view recline_view datastore datapusher envvars
|
||||
|
||||
WORKDIR ${APP_DIR}
|
||||
|
||||
# Install necessary packages to run CKAN
|
||||
RUN apk add --no-cache git \
|
||||
gettext \
|
||||
postgresql-client \
|
||||
postgresql-dev \
|
||||
python \
|
||||
py-pip \
|
||||
py-gunicorn
|
||||
|
||||
# Temporary packages to build CKAN requirements
|
||||
RUN apk add --no-cache --virtual .build-deps \
|
||||
gcc \
|
||||
musl-dev \
|
||||
python-dev
|
||||
|
||||
# Fetch CKAN and install
|
||||
RUN mkdir ${APP_DIR}/src && cd ${APP_DIR}/src && \
|
||||
git clone -b ${GIT_BRANCH} --depth=1 --single-branch ${GIT_URL} ckan && \
|
||||
cd ckan && \
|
||||
cp who.ini ${APP_DIR} && \
|
||||
python setup.py install && \
|
||||
pip install --no-cache-dir testrepository && \
|
||||
pip install --no-cache-dir --upgrade -r requirements.txt && \
|
||||
pip install --no-cache-dir html5lib==0.9999999
|
||||
|
||||
# Remove temporary packages
|
||||
RUN apk del .build-deps
|
||||
|
||||
# Default Extensions
|
||||
RUN pip install --no-cache-dir git+https://github.com/okfn/ckanext-envvars.git#egg=ckanext-envvars
|
||||
|
||||
# Create and update CKAN config
|
||||
RUN paster --plugin=ckan make-config ckan ${APP_DIR}/production.ini
|
||||
RUN paster --plugin=ckan config-tool ${APP_DIR}/production.ini "ckan.plugins = ${CKAN__PLUGINS}"
|
||||
|
||||
EXPOSE 8000
|
||||
|
||||
CMD ["gunicorn", "--paste", "production.ini"]
|
Loading…
Reference in New Issue