Skip to content

Docker: Allow to issue pull on tag entry (i.e. to fetch updates for the tag) - #9619

Open
matthiasblaesing wants to merge 1 commit into
apache:masterfrom
matthiasblaesing:docker-pull
Open

matthiasblaesing wants to merge 1 commit into
apache:masterfrom
matthiasblaesing:docker-pull

Conversation

@matthiasblaesing

Copy link
Copy Markdown
Contributor

NetBeans lists the available images/tags for a system. There were various actions available for the images/tags, but there was no option to fetch updates for the tag. This PR adds a "Pull" option to the image menu:

grafik

@matthiasblaesing matthiasblaesing added this to the NB32 milestone Sep 14, 2026
@matthiasblaesing matthiasblaesing added Docker ci:dev-build [ci] produce a dev-build zip artifact (7 days expiration, see link on workflow summary page) labels Sep 14, 2026

@mbien mbien left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

tested with userpace podman (which should be API compatible with Docker) connected via unix socket and it worked.

note: I don't have a local image registry set up, so using the action on a locally created image will fail with "Internal Server Error" in output + info log line in NB's log file:

INFO [org.netbeans.modules.docker.ui.pull.PullImageAction]
org.netbeans.modules.docker.DockerRemoteException: 500: Internal Server Error
	at org.netbeans.modules.docker.api.DockerAction.codeToException(DockerAction.java:1338)
	at org.netbeans.modules.docker.api.DockerAction.pull(DockerAction.java:571)
[catch] at org.netbeans.modules.docker.ui.pull.PullImageAction$Pull.run(PullImageAction.java:187)
	at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1370)
	at org.netbeans.modules.openide.util.GlobalLookup.execute(GlobalLookup.java:45)
	at org.openide.util.lookup.Lookups.executeWith(Lookups.java:287)
	at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:1981)
INFO [org.netbeans.modules.docker.api.DockerAction]: Unknown event {"Type":"image","Action":"pull-error","Actor":{"Attributes":{"image":"","name":"localhost\/custom:latest","error":"unable to copy from source docker:\/\/localhost\/custom:latest: initializing source docker:\/\/localhost\/custom:latest: fetching manifest latest in localhost\/custom: pinging container registry localhost: Get \"https:\/\/localhost\/v2\/\": dial tcp [::1]:443: connect: connection refused","podId":""},"ID":""},"scope":"local","timeNano":1789577079075095615,"time":1789577079,"status":"pull-error"}

This can probably be improved by updating the exception handler. Maybe it could print something more useful instead of "Internal Server Error", given that the exception has a pretty good error message as json.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ci:dev-build [ci] produce a dev-build zip artifact (7 days expiration, see link on workflow summary page) Docker

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants