2
docker run \
--volume=/:/rootfs:ro \
--volume=/sys:/sys:ro \
--volume=/var/lib/docker/:/var/lib/docker:rw \
--volume=/var/lib/kubelet/:/var/lib/kubelet:rw \
--volume=/var/run:/var/run:rw \
--net=host \
--pid=host \
--privileged=true \
-d \
gcr.io/google_containers/hyperkube-amd64:v${K8S_VERSION} \
/hyperkube kubelet \
--containerized \
--hostname-override="127.0.0.1" \
--address="0.0.0.0" \
--api-servers=http://localhost:8080 \
--config=/etc/kubernetes/manifests \
--cluster-dns=10.0.0.10 \
--cluster-domain=cluster.local \
--allow-privileged=true --v=2
A curl localhost:8080
确认API正在运行。外部访问kubernetes
但是,试图与主机的IP来访问它像curl dockerHostIp:8080
失败:
Failed to connect to ipOfDockerHost port 8080: Connection refused
我如何可以公开K8S到外面? (码头主机是一个Ubuntu服务器) 据我了解使用--net =主机应该解决这个问题。但在这种情况下它不起作用。
还有一件事:执行'kubectl get ep'也可能有帮助。 –
@geoHeil。 'kubectl get ep'返回安全端口。你如何获得证书?现在,我将它们放在由hyperkube启动的'setup-files.sh'容器中的'/ data'中。但我真的不知道如何翻译他们... –
[这里](https://github.com/kubernetes/kubernetes/blob/release-1.1/docs/admin/authentication.md)肯定是很好的文档起点 –