-
Notifications
You must be signed in to change notification settings - Fork 3
feat: Add Docker support with Jib and GitHub Actions CI/CD #6
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
Next step - publish to github mcp registry https://github.blog/ai-and-ml/generative-ai/how-to-find-install-and-manage-mcp-servers-with-the-github-mcp-registry/ |
|
just clicked approval on the workflows.. |
|
Looks like we need to resolve some conflicts first... Thoughts on how to test this, just maybe go through the docker steps? |
# Conflicts: # build.gradle.kts # gradle/libs.versions.toml
# Conflicts: # build.gradle.kts # gradle/libs.versions.toml
|
@adityamparikh do we need to deal with the sonarqube failure in this PR? I think we moved to a differetn tool... |
|
This requires Java 25! Exciting! Do we think there will be issues with adoption if we require Java 25 if this is running "on my local laptop"? |
|
I wonder... should the artifact be called |
|
I am getting this error on running |
|
Same error with |
|
Yeah, I think we should be |
I can't try this at this moment but I had downgraded to jdk 21 since jib support was not added for jdk 25 but the latest 3.4.7 version should have it GoogleContainerTools/jib@v3.4.5-gradle...v3.4.7-gradle |
# Conflicts: # build.gradle.kts # gradle/libs.versions.toml
|
okay, jibBuildDocker is working. jibBuildTar isn't: Execution failed for task ':jibBuildTar'.
|
|
Thanks! We may not need a tar output so we may be able to remove it from the doc. |
|
I like less build tooling! |
|
wow this touched seemingly every source file to format it. Consequently, this is unreviewable. Please never do that in a PR about something else. |
Summary
This PR adds comprehensive Docker support to the Solr MCP Server project using Google's Jib for containerization and GitHub Actions for automated CI/CD.
Key Features
Jib Integration:
GitHub Actions Workflow:
version-SHA+latestlatestDocumentation:
Why Jib over Buildpacks?
Jib was chosen because Docker images built with Spring Boot Buildpacks output logs to stdout, which interferes with the MCP protocol's STDIO transport. The MCP protocol requires a clean stdout channel - any extraneous output causes connection errors with MCP clients like Claude Desktop.
Changes
gradle/libs.versions.tomlbuild.gradle.ktswith multi-platform support.github/workflows/build-and-publish.yml)