Skip to content

Add 3.8 images#8

Merged
externl merged 13 commits intozeroc-ice:mainfrom
externl:3.8
Dec 19, 2025
Merged

Add 3.8 images#8
externl merged 13 commits intozeroc-ice:mainfrom
externl:3.8

Conversation

@externl
Copy link
Copy Markdown
Member

@externl externl commented Dec 18, 2025

No description provided.

@externl
Copy link
Copy Markdown
Member Author

externl commented Dec 18, 2025

The CI won't run until I merge this PR. Might have to make a few additional fixes.

EDIT: I pushed a simple ci.yml to main to so the new ci will run now.

Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR adds Docker images for Ice 3.8 services and migrates from a Makefile-based build system to GitHub Actions CI/CD. The changes introduce four new Ice 3.8 service images (glacier2, icegridnode, icegridregistry, icestorm) using Ubuntu 24.04 as the base image.

Key Changes:

  • Added complete 3.8 Docker images with Dockerfiles and entrypoint scripts for all four Ice services
  • Replaced manual Makefile build system with automated GitHub Actions workflow for building and pushing images
  • Removed outdated 3.7 README documentation files

Reviewed changes

Copilot reviewed 14 out of 14 changed files in this pull request and generated 6 comments.

Show a summary per file
File Description
Makefile Removed old manual build system for 3.7 images
.github/workflows/ci.yml New CI workflow for building and pushing Docker images across versions
3.8/glacier2/Dockerfile Dockerfile for Glacier2 router service on Ubuntu 24.04
3.8/glacier2/docker-entrypoint.sh Entrypoint script for Glacier2 service
3.8/icegridnode/Dockerfile Dockerfile for IceGrid node service on Ubuntu 24.04
3.8/icegridnode/docker-entrypoint.sh Entrypoint script for IceGrid node service
3.8/icegridregistry/Dockerfile Dockerfile for IceGrid registry service on Ubuntu 24.04
3.8/icegridregistry/docker-entrypoint.sh Entrypoint script for IceGrid registry service
3.8/icestorm/Dockerfile Dockerfile for IceStorm service on Ubuntu 24.04
3.8/icestorm/docker-entrypoint.sh Entrypoint script for IceStorm service
3.7/glacier2/README.md Removed outdated 3.7 documentation
3.7/icegridnode/README.md Removed outdated 3.7 documentation
3.7/icegridregistry/README.md Removed outdated 3.7 documentation
3.7/icestorm/README.md Removed outdated 3.7 documentation

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread .github/workflows/ci.yml Outdated
Comment thread .github/workflows/ci.yml Outdated
Comment thread 3.8/glacier2/Dockerfile Outdated
Comment thread 3.8/icegridregistry/Dockerfile
Comment thread 3.8/icegridnode/Dockerfile
Comment thread 3.8/glacier2/Dockerfile
externl and others added 2 commits December 18, 2025 14:49
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 22 out of 22 changed files in this pull request and generated 3 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread 3.8/glacier2/Dockerfile Outdated
Comment thread .github/workflows/ci.yml Outdated
Comment thread 3.8/icegridregistry/Dockerfile Outdated
externl and others added 5 commits December 18, 2025 14:59
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Copy link
Copy Markdown
Member

@pepone pepone left a comment

Choose a reason for hiding this comment

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

Looks good. This PR removed all READMEs, don't we need a README for the images?

Comment thread 3.8/glacier2/Dockerfile

COPY ./docker-entrypoint.sh /
ENTRYPOINT ["/docker-entrypoint.sh"]
CMD ["glacier2router", "--Ice.Config=/etc/glacier2router.conf"]
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.

Why do we need glacier2router and --Ice.Config here and in the entry point?

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

I believe the original intention (that I borrowed from some other container) is so that the cmd can be overwritten by the user easily.

Comment thread 3.8/icegridregistry/Dockerfile Outdated
&& sed -i 's/^IceGrid\.Registry\.Server\.Endpoints=.*/IceGrid\.Registry\.Server\.Endpoints=tcp -h 0\.0\.0\.0/' /etc/icegridregistry.conf \
&& sed -i 's/^IceGrid\.Registry\.Internal\.Endpoints=.*/IceGrid\.Registry\.Internal\.Endpoints=tcp -h 0\.0\.0\.0/' /etc/icegridregistry.conf

EXPOSE 4061 4062
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.

Do we need both, seems we only listen on 4061?

Comment thread 3.8/icegridnode/Dockerfile Outdated
&& sed -i 's/^Ice.Default.Locator=.*/#Ice.Default.Locator=/' /etc/icegridnode.conf \
&& sed -i 's/IceGrid.Node.Endpoints=.*/IceGrid.Node.Endpoints=tcp -h 0\.0\.0\.0/' /etc/icegridnode.conf

EXPOSE 4061 4062
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.

Are both required?

Copy link
Copy Markdown
Member Author

@externl externl Dec 19, 2025

Choose a reason for hiding this comment

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

No, they're not.

Comment thread 3.8/icestorm/Dockerfile
COPY ./docker-entrypoint.sh /
ENTRYPOINT ["/docker-entrypoint.sh"]

CMD ["icebox", "--IceBox.Service.IceStorm=IceStormService,38:createIceStorm", "--IceStorm.LMDB.Path=/data"]
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.

We should consider adding dsnode image for 3.8

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

I'll add in a follow-up PR.

@externl
Copy link
Copy Markdown
Member Author

externl commented Dec 19, 2025

Looks good. This PR removed all READMEs, don't we need a README for the images?

I need to figure out where to put them. Does make sense to have them in the version dirs. It used to be that docker would automatically upload them when it used to do its own image building, but that's no longer the case. Maybe I'll make top level service dirs with the README

@externl externl requested a review from pepone December 19, 2025 14:55
@externl
Copy link
Copy Markdown
Member Author

externl commented Dec 19, 2025

I've updated the READMEs and moved them into a docs folder.

@externl externl merged commit 0e96bcc into zeroc-ice:main Dec 19, 2025
13 checks passed
@externl externl deleted the 3.8 branch December 19, 2025 15:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants