Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Transfer images #1

Merged
merged 27 commits into from
Jul 14, 2022
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,23 +1,17 @@
# Build and push images to :
# Build and push images to:
# GitHub Container Registry (ghcr.io)
# Red Hat Container Registry (quay.io)
name: "Build Docker Images"

on:
create: # Branch (so that the Docker image tags exist for a new branch when pushed)
# even if nothing on 'paths' below is changed.
branches:
- '**'

push:
branches:
- main
paths:
- "**"
- "Dockerfile.*"
- "*/environment.yaml"
- ".github/workflows/image.yaml"

branches: # Only on paths above
- '**'

tags: # Always, regardless of paths above
tags:
- '*'

permissions:
@@ -98,8 +92,9 @@ jobs:
cache-from: type=gha
cache-to: type=gha,mode=max

- uses: actions/cache@v2.1.4
- name: Enable caching for Trivy
if: ${{ github.event_name == 'pull_request' }}
uses: actions/cache@v2.1.4
with:
path: .trivy
key: ${{ runner.os }}-trivy-${{ github.run_id }}
2 changes: 2 additions & 0 deletions .hadolint.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
ignored:
- DL3048 # style complaint: Invalid Label Key
47 changes: 40 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
@@ -2,23 +2,56 @@
🌅 Docker images for the Nebari platform
iameskild marked this conversation as resolved.
Show resolved Hide resolved


iameskild marked this conversation as resolved.
Show resolved Hide resolved
## Pinning
[![Build Docker Images](https://github.com/nebari-dev/nebari-docker-images/actions/workflows/build-push-docker.yaml/badge.svg)]

It is extremely important to pin specific packages:
This repo contains the source code for Docker (container) images used by the Nebari platform. This repo also contains an automated means of building and pushing these images to public container registries. Currently these images are built and pushed to the following registries:

- dask
- dask-gateway
GitHub Container Registry (ghcr.io)
- [`nebari-jupyterlab`](https://github.com/orgs/nebari-dev/packages/container/package/nebari-jupyterlab)
- [`nebari-jupyterhub`](https://github.com/orgs/nebari-dev/packages/container/package/nebari-jupyterhub)
- [nebari-dask-worker](https://github.com/orgs/nebari-dev/packages/container/package/nebari-dask-worker)
trallard marked this conversation as resolved.
Show resolved Hide resolved

## Building Dockerfile
Quay Container Registry (quay.io)
- [`nebari-jupyterlab`](https://quay.io/repository/nebari/nebari-jupyterlab)
- [`nebari-jupyterhub`](https://quay.io/repository/nebari/nebari-jupyterhub)
- [`nebari-dask-worker`](https://quay.io/repository/nebari/nebari-dask-worker)


## Getting started

Whether you want to contribute to this project or simply wish use these images, to get started, fork this repo and then clone the forked repo onto your local machine.

### pre-requisite
trallard marked this conversation as resolved.
Show resolved Hide resolved

Currently the only pre-requisite is that you have [`docker` installed](https://docs.docker.com/get-docker/) on your local machine.

### Building Dockerfile

Assuming you are in the repos root folder, you can build these images locally by running the listed commands.
trallard marked this conversation as resolved.
Show resolved Hide resolved

For JupyterLab
```shell
docker build -f Dockerfile.jupyterlab -t qhub-jupyterlab:latest .
```

For JupyterHub
```shell
docker build -f Dockerfile.dask-gateway -t qhub-dask-gateway:latest .
docker build -f Dockerfile.dask-worker -t qhub-dask-worker:latest .
```

For Dask-Worker
```shell
docker build -f Dockerfile.dask-worker -t qhub-dask-worker:latest .
docker build -f Dockerfile.dask-gateway -t qhub-dask-gateway:latest .
```

> NOTE: it is extremely important to pin specific packages `dask-gateway` and `distributed` as they need to be running the same version for the dask-workers to work as expected.
trallard marked this conversation as resolved.
Show resolved Hide resolved


### Reporting an issue

If you encounter an issue, feel free to open an issue [here](https://github.com/nebari-dev/nebari-docker-images/issues/new/choose).


## License

TBD