From 27008f780e5af817bd248eb00fe670cd7dc73e7c Mon Sep 17 00:00:00 2001 From: "promptless[bot]" Date: Wed, 24 Jun 2026 15:28:05 +0000 Subject: [PATCH 1/3] Document runpodctl template registry auth and port label flags --- runpodctl/reference/runpodctl-template.mdx | 29 ++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/runpodctl/reference/runpodctl-template.mdx b/runpodctl/reference/runpodctl-template.mdx index e32c5bbd2..c52f6d1c3 100644 --- a/runpodctl/reference/runpodctl-template.mdx +++ b/runpodctl/reference/runpodctl-template.mdx @@ -110,6 +110,12 @@ runpodctl template create --name "my-template" --image "runpod/pytorch:2.8.0-py3 # Create a Serverless template runpodctl template create --name "my-serverless-template" --image "my-image:latest" --serverless + +# Create a template that pulls from a private registry +runpodctl template create --name "private-gpu" --image "registry.example.com/team/image:tag" --registry-auth-id + +# Create a template with labeled ports +runpodctl template create --name "dev" --image "my-image:latest" --ports "22/tcp,8888/http" --port-labels "22=ssh,8888=jupyter lab" ``` @@ -144,6 +150,14 @@ Volume mount path. Comma-separated list of ports to expose (e.g., `8888/http,22/tcp`). + +Display names for the ports exposed by the template, shown next to each port in the Runpod console. Provide comma-separated `port=name` pairs (e.g., `22=ssh,8888=jupyter lab`) or a JSON object (e.g., `{"22":"ssh","8888":"jupyter lab"}`). Requires `--ports`, and every labeled port must also appear in `--ports`. + + + +ID of the container registry authentication used to pull the image from a private registry. Find the ID with [`runpodctl registry list`](/runpodctl/reference/runpodctl-registry). + + Environment variables as a JSON object (e.g., `'{"KEY":"value"}'`). @@ -169,7 +183,14 @@ Template README content. Update an existing template: ```bash +# Rename a template runpodctl template update --name "new-name" + +# Attach registry credentials +runpodctl template update --registry-auth-id + +# Update port labels (or pass "" to clear them) +runpodctl template update --port-labels "22=ssh,8888=jupyter lab" ``` #### Update flags @@ -186,6 +207,14 @@ New Docker image name. New comma-separated list of ports. + +New display names for the template's exposed ports, as `port=name` pairs or a JSON object. Pass an empty value (`--port-labels ""`) to remove all port labels. + + + +New container registry authentication ID for pulling private images. Pass an empty value (`--registry-auth-id ""`) to detach registry credentials from the template. + + New environment variables as a JSON object. From 9bd95a8ac85bae847c9d9bd25bd24d3e05ff9221 Mon Sep 17 00:00:00 2001 From: "promptless[bot]" Date: Wed, 1 Jul 2026 14:53:37 +0000 Subject: [PATCH 2/3] docs(template): note port labels shown in template get output --- runpodctl/reference/runpodctl-template.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runpodctl/reference/runpodctl-template.mdx b/runpodctl/reference/runpodctl-template.mdx index c52f6d1c3..89f7723e8 100644 --- a/runpodctl/reference/runpodctl-template.mdx +++ b/runpodctl/reference/runpodctl-template.mdx @@ -94,7 +94,7 @@ Number of results to skip for pagination. ### Get template details -Get detailed information about a specific template, including README, environment variables, and exposed ports: +Get detailed information about a specific template, including README, environment variables, and exposed ports (with their labels): ```bash runpodctl template get From 10ce50218d3124b49c646856ede5336434afa192 Mon Sep 17 00:00:00 2001 From: "promptless[bot]" Date: Mon, 13 Jul 2026 19:16:09 +0000 Subject: [PATCH 3/3] docs: clarify --port-labels comma limitation for runpodctl template --- runpodctl/reference/runpodctl-template.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runpodctl/reference/runpodctl-template.mdx b/runpodctl/reference/runpodctl-template.mdx index 89f7723e8..4d3b81b50 100644 --- a/runpodctl/reference/runpodctl-template.mdx +++ b/runpodctl/reference/runpodctl-template.mdx @@ -151,7 +151,7 @@ Comma-separated list of ports to expose (e.g., `8888/http,22/tcp`). -Display names for the ports exposed by the template, shown next to each port in the Runpod console. Provide comma-separated `port=name` pairs (e.g., `22=ssh,8888=jupyter lab`) or a JSON object (e.g., `{"22":"ssh","8888":"jupyter lab"}`). Requires `--ports`, and every labeled port must also appear in `--ports`. +Display names for the ports the template exposes, shown next to each port in the Runpod console. Provide comma-separated `port=name` pairs (e.g., `22=ssh,8888=jupyter lab`) or a JSON object (e.g., `{"22":"ssh","8888":"jupyter lab"}`). This flag requires `--ports`, and every labeled port must also appear in `--ports`. The pair form splits on commas, so use the JSON form for any label name that contains a comma.