Skip to content

Commit 41cb151

Browse files
committed
add to publishing steps
1 parent 79aa201 commit 41cb151

File tree

7 files changed

+49
-15
lines changed

7 files changed

+49
-15
lines changed

.github/workflows/publish.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ on:
77
required: true
88
type: choice
99
options:
10+
- terra-base
1011
- terra-jupyter-aou
1112
- terra-jupyter-base
1213
- terra-jupyter-bioconductor

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ Make sure to go through the [contributing guide](https://github.com/DataBiospher
2121
Custom docker images need to use a Terra base image (see above) in order to work with the service that runs notebooks on Terra.
2222
* You can use any of the base images above
2323
* `terra-base` is the smallest image, but doesn't include any scientific packages on top of Jupyter and R
24-
* Here is an example of how to build off of a base image: Add `FROM us.gcr.io/broad-dsp-gcr-public/terra-jupyter-base:0.0.1` to your dockerfile (`terra-jupyter-base` is the smallest image you can extend from)
24+
* Here is an example of how to build off of a base image: Add `FROM us.gcr.io/broad-dsp-gcr-public/terra-base:0.0.1` to your dockerfile
2525
* Customize your image (see the [terra-jupyter-python](terra-jupyter-python/Dockerfile) dockerfile for an example of how to extend from one of our base images
2626
* Publish the image to either GAR or Dockerhub;
2727
* If using Dockerhub, the image **must be public** to be used
@@ -88,11 +88,11 @@ Detailed documentation on how to integrate the terra-docker image with Leonardo
8888
Build the image:
8989
run `docker build [your_dir] -t [name]`.
9090

91-
`docker build terra-jupyter-base -t terra-jupyter-base`
91+
`docker build terra-base -t terra-base`
9292

9393
If you're on an M1 and building an image from a locally built image, replace the current FROM command:
9494

95-
`FROM --platform=linux/amd64 terra-jupyter-base`
95+
`FROM --platform=linux/amd64 terra-base`
9696

9797
Apple Silicon chips later then M1 (ex. M3) need:
9898

build_all.sh

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,16 @@
44

55
# Create the ordered list of images to build
66
# 1- terra-jupyter-base
7-
# 2- terra-jupyter-python
8-
# 3- terra-jupyter-r
9-
# 4- terra-jupyter-gatk
10-
# 5- terra-jupyter-hail
11-
# 6- terra-jupyter-aou
12-
# 7- terra-jupyter-bioconductor
13-
# 8- terra-rstudio-aou
14-
# 9- wondershaper
15-
images=("terra-jupyter-base" "terra-jupyter-python" "terra-jupyter-r" "terra-jupyter-gatk" "terra-jupyter-hail" "terra-jupyter-aou" "terra-jupyter-bioconductor" "terra-rstudio-aou" "wondershaper")
7+
# 2- terra-jupyter-base
8+
# 3- terra-jupyter-python
9+
# 4- terra-jupyter-r
10+
# 5- terra-jupyter-gatk
11+
# 6- terra-jupyter-hail
12+
# 7- terra-jupyter-aou
13+
# 8- terra-jupyter-bioconductor
14+
# 9- terra-rstudio-aou
15+
# 10- wondershaper
16+
images=("terra-base", "terra-jupyter-base" "terra-jupyter-python" "terra-jupyter-r" "terra-jupyter-gatk" "terra-jupyter-hail" "terra-jupyter-aou" "terra-jupyter-bioconductor" "terra-rstudio-aou" "wondershaper")
1617

1718
# Loop over each image to build in the correct order
1819
for image in "${images[@]}"; do

config/conf.json

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -95,6 +95,24 @@
9595
"include_in_custom_gce" : true
9696
}
9797
},
98+
{
99+
"name" : "terra-base",
100+
"base_label" : "New Base",
101+
"tools" : [
102+
"python"
103+
],
104+
"packages" : {
105+
106+
},
107+
"version" : "0.0.1",
108+
"automated_flags" : {
109+
"generate_docs" : true,
110+
"include_in_ui" : true,
111+
"build" : true,
112+
"include_in_custom_dataproc" : true,
113+
"include_in_custom_gce" : true
114+
}
115+
},
98116
{
99117
"name" : "terra-jupyter-r",
100118
"base_label" : "R",

terra-base/CHANGELOG.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
## 0.0.1 - 12/16/2025
2+
3+
- Extends GPU-enabled Ubuntu base image
4+
- Uses Python 3.10
5+
- Add UV
6+
- Add conda
7+
- Add Jupyter
8+
- Add Leonardo customizations/extensions
9+
10+
Image URL: `us.gcr.io/broad-dsp-gcr-public/terra-base:0.0.1`

terra-base/Dockerfile

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -203,7 +203,7 @@ RUN $JUPYTER_HOME/bin/jupyter kernelspec remove python3 -y
203203
# # Terra-specific Utilities
204204
# ####################### \
205205

206-
]# Copy over utility scripts and config files
206+
# Copy over utility scripts and config files
207207
ENV JUPYTER_SCRIPTS $JUPYTER_HOME/scripts
208208
ENV JUPYTER_CUSTOM $JUPYTER_HOME/custom
209209
ENV JUPYTER_EXTENSIONS $JUPYTER_SCRIPTS/extension
@@ -238,6 +238,10 @@ ENV WELDER_USER welder-user
238238
ENV WELDER_UID 1001
239239
RUN useradd -m -s /bin/bash -N -u $WELDER_UID $WELDER_USER
240240

241+
# Add an empty file to indicate that this is a terra-base image with a separate jupyer server environment
242+
# Need a flag to check in the startup scripts to know whether to use the conda environment jupyter
243+
RUN touch /etc/jupyter/.terra-base-marker
244+
241245
# Make sure that the jupyter user will have access to the jupyter path in the working directory
242246
EXPOSE $JUPYTER_PORT
243247
WORKDIR $USER_HOME

terra-base/README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,12 +43,12 @@ To build the image locally, run the following command in the root of the repo:
4343
```
4444

4545
## NOTE: Changing paths
46-
If you change the following paths for the:
46+
If you change the following paths:
4747
- `JUPYTER_HOME`
4848
- `JUPYTER_USER`
4949
- `CONDA_HOME`
5050

51-
You may need to update the following files appropriately:
51+
You may need to update the following files appropriately here and in Leonardo:
5252
- terra-docker
5353
- `conda_init.txt`
5454
- `run_jupyter.sh`

0 commit comments

Comments
 (0)