fix: enable Docker network access for package registries on Linux#196
Open
fix: enable Docker network access for package registries on Linux#196
Conversation
Harbor routines run in containerized Deno environment but couldn't access JSR registry for downloading dependencies like @std/yaml. This caused 'harbor ls' and other commands to fail on Linux systems. The fix adds --network=host to the Docker run command in run_routine(), allowing containers to access external registries while maintaining the same security model (short-lived utility containers with existing filesystem access). Fixes network connectivity issues when downloading JSR packages on Linux systems where Docker's default bridge networking is more restrictive. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
The dify-openai service builds a custom Docker image that runs 'npm install' during the build process. On Linux systems, Docker's default bridge networking can prevent build containers from accessing external package registries, causing builds to hang or fail. This fix adds 'network: host' to the build configuration, allowing the build process to access npm registry during 'npm install'. This is similar to the JSR network access fix for Deno routines but applies to Docker build-time network access. Resolves build hangs when running 'harbor up dify' on Linux systems where npm install gets stuck accessing the npm registry. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
• Fixes Docker network access issues on Linux preventing npm and JSR package downloads
• Adds
--network=hostto Deno routine containers for JSR registry access• Adds
network: hostto dify-openai Docker build for npm registry access during buildsTest plan
harbor lsworks on Linux (JSR registry access)harbor up difybuilds successfully without hanging on npm installContext
Docker on Linux uses bridge networking by default which can block container access to external package registries. This causes:
npm installwhen building the dify-openai serviceBoth fixes apply the same solution (
network: host) at different stages:🤖 Generated with Claude Code