You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Minikube网络问题:同网段开发机无法访问构建机内的Artifactory

Fixing Artifactory Access from Your Dev Laptop to Minikube on a Linux Build Machine

Let’s walk through troubleshooting this step by step— I’ve dealt with exactly this scenario when setting up CI/CD pipelines with Minikube and artifact repositories. Here’s what you need to check:

1. Verify Minikube’s Network Driver

Minikube’s default driver (usually docker) creates an isolated internal network that’s only accessible from the build machine itself. First, check which driver your Minikube instance is using:

minikube config view | grep driver
# Or check running status
minikube status

If it’s set to docker, you’ll need to either switch to a driver that exposes the Minikube node to your local network (like bridge or host), or use port forwarding/minikube tunnel to bypass the isolation.

2. Check Your Artifactory Service Configuration

Next, confirm how your Artifactory service is exposed in Kubernetes. Run this command to list services in your Artifactory namespace (replace <artifactory-ns> with your actual namespace, e.g., default):

kubectl get svc -n <artifactory-ns>

Look for the Artifactory service entry:

  • ClusterIP: This is the default, and only accessible inside the Minikube cluster. You’ll need to expose it externally (see steps 3 or 4).
  • NodePort: This assigns a port on the Minikube node’s IP. Use minikube ip to get the node’s IP, then try accessing http://<minikube-ip>:<node-port> from your build machine first.
  • LoadBalancer: Minikube doesn’t support real LoadBalancers by default, but you can use minikube tunnel to map this service to your build machine’s IP.

3. Use Kubectl Port Forwarding (Quick Fix)

If you don’t want to reconfigure the service type, port forwarding is the fastest way to expose Artifactory to your local network. Run this command on the build machine to map Artifactory’s port (usually 8081 for UI/API) to the build machine’s IP:

kubectl port-forward --address 0.0.0.0 svc/<artifactory-service-name> 8081:8081 -n <artifactory-ns>

The --address 0.0.0.0 flag ensures the port is accessible from external machines (not just the build machine itself). Now, from your dev laptop, try accessing http://<build-machine-ip>:8081.

4. Use Minikube Tunnel for LoadBalancer Services

If your Artifactory service is set to LoadBalancer, run this on the build machine:

minikube tunnel

This will create a network route that maps the LoadBalancer’s external IP to your build machine’s local IP. You can then use the build machine’s IP plus Artifactory’s service port to access it from your laptop.

5. Check Build Machine Firewall Rules

Don’t forget to allow incoming traffic on the port you’re using (8081 by default) through the build machine’s firewall:

  • For firewalld:
    sudo firewall-cmd --add-port=8081/tcp --permanent
    sudo firewall-cmd --reload
    
  • For iptables:
    sudo iptables -A INPUT -p tcp --dport 8081 -j ACCEPT
    sudo iptables-save
    

6. Validate Network Connectivity

First, confirm your dev laptop can ping the build machine’s IP. If ping fails, fix basic network issues first (check subnet masks, routing rules, or any network ACLs between the machines).

If ping works but Artifactory is still unreachable, test access from the build machine itself first with:

curl http://<minikube-ip>:<artifactory-port>
# Or if using port forwarding:
curl http://localhost:8081

If this works but the laptop can’t connect, the issue is almost certainly firewall-related or port forwarding configuration.

内容的提问来源于stack exchange,提问作者Sykomaniac

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 07:18:21