59 lines
2.1 KiB
Plaintext
59 lines
2.1 KiB
Plaintext
IMAGE ckan
|
|
LAYER shared/alpine
|
|
LAYER shared/libxml
|
|
LAYER shared/python2
|
|
LAYER ckan/ckan
|
|
|
|
RUN EOF
|
|
# Add edge/testing repository
|
|
echo '@edge http://dl-cdn.alpinelinux.org/alpine/edge/testing' >>/etc/apk/repositories
|
|
|
|
# Install runtime dependencies
|
|
apk --no-cache add geos@edge libjpeg-turbo libmagic libpq mailcap py2-pip zlib
|
|
|
|
# Install build dependencies
|
|
apk --no-cache add --virtual .deps build-base git libjpeg-turbo-dev libxml2-dev libxslt-dev postgresql-dev python2-dev zlib-dev
|
|
|
|
# Hackfix for python find_library('c') call
|
|
ln -s /lib/ld-musl-x86_64.so.1 /lib/libc.so.1
|
|
|
|
# Install CKAN
|
|
mkdir -p /srv/ckan
|
|
cd /srv/ckan
|
|
pip install -U setuptools
|
|
pip install flask-debugtoolbar
|
|
pip install -e 'git+https://github.com/ckan/ckan.git#egg=ckan'
|
|
pip install -r /srv/ckan/src/ckan/requirements.txt
|
|
|
|
# Install CKAN extensions
|
|
pip install -e 'git+https://github.com/ckan/ckanext-basiccharts#egg=ckanext_basiccharts'
|
|
pip install -e 'git+https://github.com/ckan/ckanext-spatial#egg=ckanext_spatial'
|
|
pip install -e 'git+https://github.com/ckan/ckanext-geoview#egg=ckanext_geoview'
|
|
pip install -e 'git+https://github.com/ckan/ckanext-mapviews#egg=ckanext_mapviews'
|
|
pip install -e 'git+https://github.com/XVTSolutions/ckanext-spatialUI#egg=ckanext_spatialui'
|
|
pip install -e 'git+https://github.com/aptivate/ckanext-datasetthumbnail#egg=ckanext_datasetthumbnail'
|
|
pip install -e 'git+https://github.com/datagvat/ckanext-dgvat_xls#egg=ckanext_dgvat_xls'
|
|
pip install -r /srv/ckan/src/ckanext-spatial/pip-requirements.txt
|
|
pip install -r /srv/ckan/src/ckanext-dgvat-xls/requirements.txt
|
|
|
|
# Create mountpoints
|
|
mkdir /etc/ckan
|
|
mkdir /srv/ckan/storage
|
|
|
|
# Create OS user
|
|
addgroup -S -g 8003 ckan
|
|
adduser -S -u 8003 -h /srv/ckan -s /bin/false -g ckan -G ckan ckan
|
|
chown -R ckan:ckan /srv/ckan
|
|
|
|
# Cleanup
|
|
apk --no-cache del .deps
|
|
find /srv/ckan/src -name '.git*' -exec rm -rf {} +
|
|
rm -rf /root/.cache
|
|
EOF
|
|
|
|
MOUNT /srv/ckan/conf etc/ckan
|
|
MOUNT /srv/ckan/data srv/ckan/storage
|
|
|
|
USER 8003 8003
|
|
CMD /usr/bin/paster serve /etc/ckan/ckan.ini
|