From c4e65326de64b64b6451876f9e594f6de3d9b687 Mon Sep 17 00:00:00 2001 From: Peter Su Date: Wed, 23 Jul 2025 16:57:08 +0000 Subject: [PATCH 1/5] adding .devcontainer, devcontainer-template.json, and docker-compose.yaml file, following the jupyter-gatk example. This uses the aws_wf_testing ECR repo image for gatk --- src/jupyter-gatk-aws/.devcontainer.json | 54 +++++++++++++++++++ .../devcontainer-template.json | 33 ++++++++++++ src/jupyter-gatk-aws/docker-compose.yaml | 22 ++++++++ 3 files changed, 109 insertions(+) create mode 100644 src/jupyter-gatk-aws/.devcontainer.json create mode 100644 src/jupyter-gatk-aws/devcontainer-template.json create mode 100644 src/jupyter-gatk-aws/docker-compose.yaml diff --git a/src/jupyter-gatk-aws/.devcontainer.json b/src/jupyter-gatk-aws/.devcontainer.json new file mode 100644 index 00000000..2efa58a2 --- /dev/null +++ b/src/jupyter-gatk-aws/.devcontainer.json @@ -0,0 +1,54 @@ +{ + "name": "JupyterLab with GATK 4.2.6.1-corretto-11", + "dockerComposeFile": "docker-compose.yaml", + "service": "app", + "shutdownAction": "none", + "workspaceFolder": "/workspace", + "postCreateCommand": [ + "./startupscript/post-startup.sh", + "jupyter", + "/home/jupyter", + "${templateOption:cloud}", + "${templateOption:login}" + ], + // re-mount bucket files on container start up + "postStartCommand": [ + "./startupscript/remount-on-restart.sh", + "jupyter", + "/home/jupyter", + "${templateOption:cloud}", + "${templateOption:login}" + ], + "remoteUser": "root", + "customizations": { + "workbench": { + "opens": { + "extensions": [ + // Source + ".ipynb", + ".R", + ".py", + // Documents + ".md", + ".html", + ".latex", + ".pdf", + // Images + ".bmp", + ".gif", + ".jpeg", + ".jpg", + ".png", + ".svg", + // Data + ".csv", + ".tsv", + ".json", + ".vl" + ], + "fileUrlSuffix": "/lab/tree/{path}", + "folderUrlSuffix": "/lab/tree/{path}" + } + } + } + } \ No newline at end of file diff --git a/src/jupyter-gatk-aws/devcontainer-template.json b/src/jupyter-gatk-aws/devcontainer-template.json new file mode 100644 index 00000000..00823312 --- /dev/null +++ b/src/jupyter-gatk-aws/devcontainer-template.json @@ -0,0 +1,33 @@ +{ + "id": "jupyter-gatk-template", + "description": "A template used to serve the Workbench JupyterLab container image with GATK installed", + "version": "0.0.1", + "name": "Workbench JupyterLab GATK template", + "documentationURL": "https://github.com/verily-src/workbench-app-devcontainers/tree/master/src/jupyter-gatk-aws", + "licenseURL": "https://github.com/verily-src/workbench-app-devcontainers/blob/master/LICENSE", + "options": { + "cloud": { + "type": "string", + "description": "VM cloud environment", + "proposals": ["gcp", "aws"], + "default": "gcp" + }, + "login": { + "type": "string", + "description": "Whether to log in to workbench CLI", + "proposals": ["true", "false"], + "default": "false" + }, + "containerImage": { + "type": "string", + "description": "The container image to use", + "default": "639879951631.dkr.ecr.us-west-2.amazonaws.com/aws_wf_testing:4.2.6.1-corretto-11" + }, + "containerPort": { + "type": "number", + "description": "The port to expose the container on", + "default": 8888 + } + }, + "platforms": ["Any"] + } \ No newline at end of file diff --git a/src/jupyter-gatk-aws/docker-compose.yaml b/src/jupyter-gatk-aws/docker-compose.yaml new file mode 100644 index 00000000..3ba719b1 --- /dev/null +++ b/src/jupyter-gatk-aws/docker-compose.yaml @@ -0,0 +1,22 @@ +version: "2.4" +services: + app: + container_name: "application-server" + image: "639879951631.dkr.ecr.us-west-2.amazonaws.com/aws_wf_testing:4.2.6.1-corretto-11" + user: "jupyter" + restart: always + volumes: + - .:/workspace:cached + ports: + - "8888:8888" + networks: + - app-network + cap_add: + - SYS_ADMIN + devices: + - /dev/fuse + security_opt: + - apparmor:unconfined +networks: + app-network: + external: true \ No newline at end of file From e61ea7022dbae7b528d9866e57393f73bca6384e Mon Sep 17 00:00:00 2001 From: Peter Su Date: Thu, 24 Jul 2025 18:19:14 +0000 Subject: [PATCH 2/5] using the public ECR image for gatk:4.2.6.1-corretto-11 instead --- src/jupyter-gatk-aws/devcontainer-template.json | 2 +- src/jupyter-gatk-aws/docker-compose.yaml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/jupyter-gatk-aws/devcontainer-template.json b/src/jupyter-gatk-aws/devcontainer-template.json index 00823312..7bbc487c 100644 --- a/src/jupyter-gatk-aws/devcontainer-template.json +++ b/src/jupyter-gatk-aws/devcontainer-template.json @@ -21,7 +21,7 @@ "containerImage": { "type": "string", "description": "The container image to use", - "default": "639879951631.dkr.ecr.us-west-2.amazonaws.com/aws_wf_testing:4.2.6.1-corretto-11" + "default": "public.ecr.aws/aws-genomics/broadinstitute/gatk:4.2.6.1-corretto-11" }, "containerPort": { "type": "number", diff --git a/src/jupyter-gatk-aws/docker-compose.yaml b/src/jupyter-gatk-aws/docker-compose.yaml index 3ba719b1..275a9d09 100644 --- a/src/jupyter-gatk-aws/docker-compose.yaml +++ b/src/jupyter-gatk-aws/docker-compose.yaml @@ -2,7 +2,7 @@ version: "2.4" services: app: container_name: "application-server" - image: "639879951631.dkr.ecr.us-west-2.amazonaws.com/aws_wf_testing:4.2.6.1-corretto-11" + image: "public.ecr.aws/aws-genomics/broadinstitute/gatk:4.2.6.1-corretto-11" user: "jupyter" restart: always volumes: From 6e2534c8f8e9e1b2d17f5077729e53df813bfd64 Mon Sep 17 00:00:00 2001 From: Peter Su Date: Thu, 24 Jul 2025 20:07:25 +0000 Subject: [PATCH 3/5] using a jupyter-rna image now --- src/jupyter-gatk-aws/devcontainer-template.json | 2 +- src/jupyter-gatk-aws/docker-compose.yaml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/jupyter-gatk-aws/devcontainer-template.json b/src/jupyter-gatk-aws/devcontainer-template.json index 7bbc487c..d60ea7dc 100644 --- a/src/jupyter-gatk-aws/devcontainer-template.json +++ b/src/jupyter-gatk-aws/devcontainer-template.json @@ -21,7 +21,7 @@ "containerImage": { "type": "string", "description": "The container image to use", - "default": "public.ecr.aws/aws-genomics/broadinstitute/gatk:4.2.6.1-corretto-11" + "default": "public.ecr.aws/sdgeorge/cyverse-images/jupyter-rna:test" }, "containerPort": { "type": "number", diff --git a/src/jupyter-gatk-aws/docker-compose.yaml b/src/jupyter-gatk-aws/docker-compose.yaml index 275a9d09..86994d95 100644 --- a/src/jupyter-gatk-aws/docker-compose.yaml +++ b/src/jupyter-gatk-aws/docker-compose.yaml @@ -2,7 +2,7 @@ version: "2.4" services: app: container_name: "application-server" - image: "public.ecr.aws/aws-genomics/broadinstitute/gatk:4.2.6.1-corretto-11" + image: "public.ecr.aws/sdgeorge/cyverse-images/jupyter-rna:test" user: "jupyter" restart: always volumes: From 52eee4fda4863ce84ef4ed82eee3cc540d8a2e25 Mon Sep 17 00:00:00 2001 From: Peter Su Date: Thu, 24 Jul 2025 21:23:28 +0000 Subject: [PATCH 4/5] using public.ecr.aws/j1r0q0g6/notebooks/notebook-servers/jupyter-scipy:v1.5.0 --- src/jupyter-gatk-aws/devcontainer-template.json | 2 +- src/jupyter-gatk-aws/docker-compose.yaml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/jupyter-gatk-aws/devcontainer-template.json b/src/jupyter-gatk-aws/devcontainer-template.json index d60ea7dc..783b0fe4 100644 --- a/src/jupyter-gatk-aws/devcontainer-template.json +++ b/src/jupyter-gatk-aws/devcontainer-template.json @@ -21,7 +21,7 @@ "containerImage": { "type": "string", "description": "The container image to use", - "default": "public.ecr.aws/sdgeorge/cyverse-images/jupyter-rna:test" + "default": "public.ecr.aws/j1r0q0g6/notebooks/notebook-servers/jupyter-scipy:v1.5.0" }, "containerPort": { "type": "number", diff --git a/src/jupyter-gatk-aws/docker-compose.yaml b/src/jupyter-gatk-aws/docker-compose.yaml index 86994d95..6da28371 100644 --- a/src/jupyter-gatk-aws/docker-compose.yaml +++ b/src/jupyter-gatk-aws/docker-compose.yaml @@ -2,7 +2,7 @@ version: "2.4" services: app: container_name: "application-server" - image: "public.ecr.aws/sdgeorge/cyverse-images/jupyter-rna:test" + image: "public.ecr.aws/j1r0q0g6/notebooks/notebook-servers/jupyter-scipy:v1.5.0" user: "jupyter" restart: always volumes: From e0f4e62c65f6f52d89f601c10e1428471ed88a75 Mon Sep 17 00:00:00 2001 From: Peter Su Date: Thu, 24 Jul 2025 21:24:13 +0000 Subject: [PATCH 5/5] renamed directory --- src/{jupyter-gatk-aws => jupyter-scipy}/.devcontainer.json | 0 .../devcontainer-template.json | 0 src/{jupyter-gatk-aws => jupyter-scipy}/docker-compose.yaml | 0 3 files changed, 0 insertions(+), 0 deletions(-) rename src/{jupyter-gatk-aws => jupyter-scipy}/.devcontainer.json (100%) rename src/{jupyter-gatk-aws => jupyter-scipy}/devcontainer-template.json (100%) rename src/{jupyter-gatk-aws => jupyter-scipy}/docker-compose.yaml (100%) diff --git a/src/jupyter-gatk-aws/.devcontainer.json b/src/jupyter-scipy/.devcontainer.json similarity index 100% rename from src/jupyter-gatk-aws/.devcontainer.json rename to src/jupyter-scipy/.devcontainer.json diff --git a/src/jupyter-gatk-aws/devcontainer-template.json b/src/jupyter-scipy/devcontainer-template.json similarity index 100% rename from src/jupyter-gatk-aws/devcontainer-template.json rename to src/jupyter-scipy/devcontainer-template.json diff --git a/src/jupyter-gatk-aws/docker-compose.yaml b/src/jupyter-scipy/docker-compose.yaml similarity index 100% rename from src/jupyter-gatk-aws/docker-compose.yaml rename to src/jupyter-scipy/docker-compose.yaml