Skip to content

Commit

Permalink
add prelim dockerfile and build script
Browse files Browse the repository at this point in the history
  • Loading branch information
smnorris committed Jun 10, 2024
1 parent 4662b12 commit b460583
Show file tree
Hide file tree
Showing 2 changed files with 82 additions and 0 deletions.
52 changes: 52 additions & 0 deletions .github/workflows/build-docker-image.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
name: CI

on:
workflow_dispatch:
push:
branches:
- 'main'
paths:
- 'Dockerfile'
tags:
- 'v*'
pull_request:
branches:
- 'main'
paths:
- 'Dockerfile'

env:
REGISTRY: ghcr.io
IMAGE_NAME: ${{ github.repository }}

jobs:
build-and-push-image:
runs-on: ubuntu-latest
permissions:
contents: read
packages: write

steps:
- name: Checkout repository
uses: actions/checkout@v3

- name: Log in to the Container registry
uses: docker/login-action@65b78e6e13532edd9afa3aa52ac7964289d1a9c1
with:
registry: ${{ env.REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Extract metadata (tags, labels) for Docker
id: meta
uses: docker/metadata-action@9ec57ed1fcdbf14dcef7dfbe97b2010124a938b7
with:
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}

- name: Build and push Docker image
uses: docker/build-push-action@f2a1d5e99d037542a71f64918e516c093c6f3fc4
with:
context: .
push: ${{ github.event_name != 'pull_request' }}
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
30 changes: 30 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
FROM ghcr.io/osgeo/gdal:ubuntu-full-3.8.4

ENV LANG="C.UTF-8" LC_ALL="C.UTF-8"
ENV DEBIAN_FRONTEND=noninteractive

RUN apt-get update && apt-get install -y software-properties-common

RUN apt-get update && \
apt-get -qq install -y --no-install-recommends make && \
apt-get -qq install -y --no-install-recommends g++ && \
apt-get -qq install -y --no-install-recommends git && \
apt-get -qq install -y --no-install-recommends zip && \
apt-get -qq install -y --no-install-recommends unzip && \
apt-get -qq install -y --no-install-recommends parallel && \
apt-get -qq install -y --no-install-recommends postgresql-client && \
apt-get -qq install -y --no-install-recommends python3-pip && \
apt-get -qq install -y --no-install-recommends python3-dev && \
apt-get -qq install -y --no-install-recommends python3-psycopg2 && \
rm -rf /var/lib/apt/lists/*

WORKDIR /home/harvest-restrictions

RUN pip3 install -U pip && \
pip3 install --no-cache-dir --upgrade numpy && \
pip3 install --no-cache-dir pyarrow && \
pip3 install --no-cache-dir --no-binary fiona fiona && \
pip3 install --no-cache-dir bcdata && \
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip" && \
unzip awscliv2.zip && \
./aws/install

0 comments on commit b460583

Please sign in to comment.