- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在本地 Ubuntu 工作站上使用 minikube 和 docker,我在 Minikube Web UI 中收到以下错误:
Failed to pull image "localhost:5000/samples/myserver:snapshot-180717-213718-0199": rpc error: code = Unknown desc = Error response from daemon: Get http://localhost:5000/v2/: dial tcp 127.0.0.1:5000: getsockopt: connection refused
在我创建以下部署配置后:
kubectl apply -f hello-world-deployment.yaml
hello-world-deployment.yaml
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: hello-world
spec:
replicas: 1
template:
metadata:
labels:
app: hello-world
tier: backend
spec:
containers:
- name: hello-world
image: localhost:5000/samples/myserver:snapshot-180717-213718-0199
resources:
requests:
cpu: 100m
memory: 100Mi
env:
- name: GET_HOSTS_FROM
value: dns
ports:
- containerPort: 8080
以及 docker 镜像的输出:
REPOSITORY TAG IMAGE ID CREATED SIZE
samples/myserver latest aa0a1388cd88 About an hour ago 435MB
samples/myserver snapshot-180717-213718-0199 aa0a1388cd88 About an hour ago 435MB
k8s.gcr.io/kube-proxy-amd64 v1.10.0 bfc21aadc7d3 3 months ago 97MB
基于本指南: How to use local docker images with Minikube?
我也跑过:
eval $(minikube docker-env)
并基于此:
https://github.com/docker/for-win/issues/624
我添加了:
"InsecureRegistry": [
"localhost:5000",
"127.0.0.1:5000"
],
到/etc/docker/daemon.json
对于我缺少什么来让镜像在 minikube 中工作有什么建议吗?
我已按照以下答案中的步骤进行操作,但是当我到达此步骤时:
$ kubectl port-forward --namespace kube-system $(kubectl get po -n kube-system | grep kube-registry-v0 | awk '{print $1;}') 5000:5000
它就像这样挂起:
$ kubectl port-forward --namespace kube-system $(kubectl get po -n kube-system | grep kube-registry-v0 | awk '{print $1;}') 5000:5000
Forwarding from 127.0.0.1:5000 -> 5000
Forwarding from [::1]:5000 -> 5000
创建部署配置后,我在 minikube 仪表板中遇到了相同的错误。
根据 BMitch 的回答,我现在尝试创建一个本地 docker 存储库并将图像推送到其中:
$ docker run -d -p 5000:5000 --restart always --name registry registry:2
$ docker pull ubuntu
$ docker tag ubuntu localhost:5000/ubuntu:v1
$ docker push localhost:5000/ubuntu:v1
接下来,当我执行 docker 镜像时,我得到:
$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
ubuntu latest 74f8760a2a8b 4 days ago 82.4MB
localhost:5000/ubuntu v1 74f8760a2a8b 4 days ago 82.4MB
然后我将部署配置 hello-world-deployment.yaml 更新为:
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: hello-world
spec:
replicas: 1
template:
metadata:
labels:
app: hello-world
tier: backend
spec:
containers:
- name: hello-world
image: localhost:5000/ubuntu:v1
resources:
requests:
cpu: 100m
memory: 100Mi
env:
- name: GET_HOSTS_FROM
value: dns
ports:
- containerPort: 8080
和
kubectl create -f hello-world-deployment.yaml
但是在 Minikube 中我仍然遇到类似的错误:
Failed to pull image "localhost:5000/ubuntu:v1": rpc error: code = Unknown desc = Error response from daemon: Get http://localhost:5000/v2/: dial tcp 127.0.0.1:5000: getsockopt: connection refused
看来 Minikube 不允许查看我刚刚创建的本地注册表?
最佳答案
看起来您遇到了计算机上的localhost和minikube VM上下文中使用的localhost问题。要使注册表正常工作,您必须设置额外的端口转发。
如果您的minikube由于多次尝试修复注册表问题,目前安装已损坏,我建议重新启动 minikube 环境:
minikube stop && minikube delete && rm -fr $HOME/.minikube && minikube start
接下来,获取 kube 注册表 yaml 文件:
curl -O https://gist.githubusercontent.com/coco98/b750b3debc6d517308596c248daf3bb1/raw/6efc11eb8c2dce167ba0a5e557833cc4ff38fa7c/kube-registry.yaml
然后,将其应用到 minikube 上:
kubectl create -f kube-registry.yaml
测试 minikube VM 内的注册表是否有效:
minikube ssh && curl localhost:5000
在 Ubuntu 上,转发端口以到达端口 5000 处的注册表:
kubectl port-forward --namespace kube-system $(kubectl get po -n kube-system | grep kube-registry-v0 | awk '{print $1;}') 5000:5000
如果您想从您的计算机共享您的私有(private)注册表,您可能会对 sharing local registry for minikube 感兴趣。博客条目。
关于docker - 127.0.0.1 :5000: getsockopt: connection refused in Minikube,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51390161/
第三方库仅向我们提供了在其上监听数据的已创建套接字。现在,此套接字可以是udp或tcp, 我不知道应该为getsockopt提供哪些选项来确定套接字是udp还是tcp。 SOL_SOCKET,SO_B
我得到以下链接:SOL_SOCKET in getsockopt() 但这对我来说真的很困惑。有人回答说SOL_SOCKET表示套接字层。什么是套接字层?该参数还有其他可用选项吗? 如果我们传递 SO
我们可以看到api定义为blow int getsockopt(int sockfd, int level, int optname, void *optva
我遇到了 Windows 上套接字的问题。调用 getsockopt() 总是失败。奇怪的是 setsockopt() 似乎有效(至少它报告成功......虽然我设置的选项似乎没有我预期的效果)。 我
我正在开发一个接受 HTTP 请求并将它们转发到目的地的项目。我们使用 Linux (2.6.35.14-106.fc14.x86_64) 和 TPROXY。我将在下面提供详细信息。 我看到的问题是,
我将我的项目从 python tornado 重写为 go(使用 iris 框架)。基本功能测试正常。我在高并发下测试的时候,app总是停一会,然后报错: (dial tcp 192.168.1.22
我正在尝试将gitlab-runner与docker-ssh结合使用。这是我的config.toml的样子: [[runners]] name = “CI/CD docker-ssh alfa” ur
我正在努力了解如何在 kubernetes 1.10 上使用 flannel 正确配置 kube-dns,并将 containerd 作为 CRI。 kube-dns 无法运行,出现以下错误: kub
在 Prometheus 的目标页面中,我收到以下错误: 我在 Linux 主机上使用它 普罗米修斯版本: prometheus, version 1.1.2 (branch: master, rev
我正在尝试增加用于与 Linux 设备驱动程序交互的原始套接字的 SO_RCVBUF。默认的 rmem_default/rmem_max 都太小了,163840。因此我使用以下 stack overf
我浏览了文档,但仍然不明白 optlen 在 getsockopt(int s, int level, int optname, void *optval, socklen_t *optlen) ,谁
我正在使用以下程序来调试一个更大的问题。 现在,如果我在 OSX 上运行相同的程序,getopt 永远不会返回 0 或 1,它总是返回我为 optval 设置的任何值!! 一定是我的程序中有明显的错误
OS X 不提供 SO_PROTOCOL 套接字选项,该选项允许调用者“...将套接字类型检索为整数”。 ( http://linux.die.net/man/7/socket ) 换句话说,以下程序
我正在学习 Udacity 的 kubernetes 教程。当我使用以下命令运行 nginx 镜像时 kubectl run nginx --image=nginx:1.10.0 它给了我错误 err
我想从我的 kurnetes 集群中使用我的 etcd pod 的 etcdctl 功能,但我不能。我已经从 kubeadm 安装了我的 kubernetes,我有 1 个主节点和 1 个节点。 当我
当我尝试从私有(private) Docker Registry 中拉取镜像时出现错误 Error response from daemon: Get https://XX.XX.XX.XXX:500
我试图通过在设置后回读它来验证我的 TCP_NODELAY 设置是否有效。 我将值设置为“1”,但当我读回它时,它设置为“4”。恐怕我做错了什么。 这是我的代码: int tcpBefore;
我正在尝试在 GNU/Linux 系统上以编程方式配置我的 TCP 连接的 MSS,特别是 Ubuntu 12.04,内核 3.2.0-68-通用 根据 man 7 tcp TCP_MAXSEG Th
您好,我有以下程序来检查 UDP 套接字的发送缓冲区大小。但是,我的返回值让我有点困惑。我使用以下简单的应用程序: #include #include int main(int argc, cha
套接字选项特别用于什么,即套接字编程中的 setsockopt() 和 getsockopt()? 最佳答案 例如你想设置或知道接收缓冲区大小 1) int skt, int sndsize; err
我是一名优秀的程序员,十分优秀!