Skip to content

Commit

Permalink
Update dockers
Browse files Browse the repository at this point in the history
  • Loading branch information
ZacWarham committed Sep 9, 2024
1 parent 2b26942 commit ef57389
Show file tree
Hide file tree
Showing 5 changed files with 115 additions and 0 deletions.
44 changes: 44 additions & 0 deletions .github/workflows/docker-publish-511-autograder-python.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
# Publishes docker image, pinning actions to a commit SHA,
# and updating most recently built image with the latest tag.
# Can be triggered by either pushing a commit that changes the `Dockerfile`,
# or manually dispatching the workflow.

name: Publish Docker image (511 Python Autograder)

on:
workflow_dispatch:
push:
paths:
- '511/autograder-python/Dockerfile'

jobs:
push_to_registry:
name: Push Docker image to Docker Hub
runs-on: ubuntu-latest
steps:
- name: Check out the repo
uses: actions/checkout@v4

- name: Log in to Docker Hub
uses: docker/login-action@f4ef78c080cd8ba55a85445d5b36e214a81df20a
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}

- name: Extract metadata (tags, labels) for Docker
id: meta
uses: docker/metadata-action@9ec57ed1fcdbf14dcef7dfbe97b2010124a938b7
with:
images: ubcmds/511-autograder-python
tags: |
type=raw, value={{sha}},enable=${{github.ref_type != 'tag' }}
type=raw, value=latest
- name: Build and push Docker image
uses: docker/build-push-action@3b5e8027fcad23fda98b2e3ac259d8d67585f671
with:
context: ./511/autograder-python
file: 511/autograder-python/Dockerfile
push: true
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
44 changes: 44 additions & 0 deletions .github/workflows/docker-publish-511-python.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
# Publishes docker image, pinning actions to a commit SHA,
# and updating most recently built image with the latest tag.
# Can be triggered by either pushing a commit that changes the `Dockerfile`,
# or manually dispatching the workflow.

name: Publish Docker image (511 Python)

on:
workflow_dispatch:
push:
paths:
- '511/python/Dockerfile'

jobs:
push_to_registry:
name: Push Docker image to Docker Hub
runs-on: ubuntu-latest
steps:
- name: Check out the repo
uses: actions/checkout@v4

- name: Log in to Docker Hub
uses: docker/login-action@f4ef78c080cd8ba55a85445d5b36e214a81df20a
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}

- name: Extract metadata (tags, labels) for Docker
id: meta
uses: docker/metadata-action@9ec57ed1fcdbf14dcef7dfbe97b2010124a938b7
with:
images: ubcmds/511-python
tags: |
type=raw, value={{sha}},enable=${{github.ref_type != 'tag' }}
type=raw, value=latest
- name: Build and push Docker image
uses: docker/build-push-action@3b5e8027fcad23fda98b2e3ac259d8d67585f671
with:
context: ./511/python
file: 511/python/Dockerfile
push: true
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
12 changes: 12 additions & 0 deletions 511/autograder-python/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# Use the prairielearn r autograder
FROM prairielearn/grader-python:latest

# Define additional packages not included in Python that are required for all courses
# eg.
ENV PYTHON_PACKAGES="scipy numpy pandas matplotlib"

# Install the pre-defined Python packages
# eg.
RUN pip install --no-cache-dir $PYTHON_PACKAGES

# End course image
15 changes: 15 additions & 0 deletions 511/python/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# Use the base image provided by MDS
FROM ubcmds/base-python:dd7ebe7

# Define additional packages that are specific to this course
ENV PYTHON_PACKAGES="nycflight13"

# Install the pre-defined Python packages
RUN pip install --no-cache-dir $PYTHON_PACKAGES

# Fix permisions (needed until https://github.com/PrairieLearn/PrairieLearn/pull/9831 is merged)
USER root
RUN chown -R 1001:1001 /tmp/jupyter_config
USER 1001

# End course image

0 comments on commit ef57389

Please sign in to comment.