cancel
Showing results for 
Search instead for 
Did you mean: 
Data Engineering
Join discussions on data engineering best practices, architectures, and optimization strategies within the Databricks Community. Exchange insights and solutions with fellow data engineers.
cancel
Showing results for 
Search instead for 
Did you mean: 

Attempt to use a custom container with an instance pool fails

mrstevegross
Contributor III

I am trying to run a job with (1) custom containers, and (2) via an instance pool. Here's the setup:

  1. The custom container is just the DBR-provided `databricksruntime/standard:12.2-LTS`
  2. The instance pool is defined via the UI (see screenshot, below).
  3. At runtime, the error I get is: `The target instance pool InstancePoolId(<redacted>) does not have docker images configured, thus not supporting cluster creation with docker image. Please update your cluster attribute or create a separate instance pool for docker image clusters.`

I do not see any setting on the instance pool related to enabling docker images, however. I found one related post on the forum, but is a slightly different scenario and doesn't have a clear resolution.

Any pointers?

Thanks,

--Steve

mrstevegross_0-1742914043598.png

 

1 ACCEPTED SOLUTION

Accepted Solutions

Advika
Databricks Employee
Databricks Employee

Hello @mrstevegross!

Thanks for sharing your findings. While the docs mention this setting, they donโ€™t clearly state itโ€™s required. Your observation makes sense and clarifying this would help others avoid confusion. Iโ€™ll share this with the internal teams.

View solution in original post

5 REPLIES 5

Isi
Contributor

Hey Steve @mrstevegross ,

To preload container services in a pool, you must do it via the Databricks API, since this option is not available through the UI.

That said, itโ€™s important to keep in mind that pools are just compute infrastructure, not clusters themselves. Pools donโ€™t define runtime behavior, thatโ€™s something you set when you create a cluster that uses the pool.

Hope this helps ๐Ÿ™‚

Isi

mrstevegross
Contributor III

>To preload container services in a pool, you must do it via the Databricks API, since this option is not available through the UI.

I'm not trying to "preload" it, I just want to my cluster to (1) use a container, and (2) use my pool. I'm aware that the create instance pool API offers a "preloaded_images" mechanism, but there's nothing in the docs that says "preloaded_images" are *required* if a cluster create request uses the docker_image option. Can you clarify?

mrstevegross
Contributor III

I think I have solved this. I added a URL for `preloaded_docker_image` to my instance pool, and the job worked correctly.

This suggests that the DBR docs for preloaded_docker_image are incomplete; they should clarify that a user must add an entry in order to use the docker image feature.

mrstevegross
Contributor III

If anyone from DBR is monitoring this thread, can y'all confirm my understanding and--if so--update the docs to reflect this requirement?

Advika
Databricks Employee
Databricks Employee

Hello @mrstevegross!

Thanks for sharing your findings. While the docs mention this setting, they donโ€™t clearly state itโ€™s required. Your observation makes sense and clarifying this would help others avoid confusion. Iโ€™ll share this with the internal teams.