由于我的Ubuntu是在VirtualBox虚拟机中搭建的,所以这种搭建方法其实为:
minikube(vm-driver=none) + docker
1、首先要安装docker
apt update apt upgrade apt-get install docker
2、准备一个自己的docker虚拟机
Dockerfile
FROM node:6.12.0 EXPOSE 8080 COPY myserver.js . CMD node myserver.js
myserver.js
var http = require('http'); var handleRequest = function(request, response) { console.log('Received request for URL: ' + request.url); response.writeHead(200); response.end('Hello World!'); }; var www = http.createServer(handleRequest); www.listen(8080);
创建镜像
#测试myserver.js nodejs myserver.js #构建image sudo docker build -t myserver:1.0.0 . #运行container sudo docker run -itd --name=myserver -p8080:8080 myserver:1.0.0 #测试 wget localhost:8080
3、下载minikube及kubectl
curl -Lo minikube https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64 chmod +x minikube sudo mv minikube /usr/local/bin/ curl -Lo kubectl https://storage.googleapis.com/kubernetes-release/release/v1.8.4/bin/linux/amd64/kubectl chmod +x kubectl sudo mv kubectl /usr/local/bin/
4、启动minikube
minikube version minikube --vm-driver=none start
5、用kubectl部署服务
#切换context kubectl config use-context minikube #进行一个部署 kubectl run hikub01 --image=myserver:1.0.0 --port=8080 #查看pods kubectl get pods #查看部署 kubectl get deployments #暴露服务 kubectl expose deployment hikub01 --type=LoadBalancer #查看服务 kubectl get services #查看服务信息 minikube service hikub01 #可以根据输出,在浏览器或wget访问服务
6、管理界面
kubectl proxy --address='172.16.172.71' --accept-hosts='.*' --accept-paths='.*'
浏览器访问:
http://172.16.172.71:8001/
http://172.16.172.71:8001/ui
7、清理
#删除服务 kubectl delete service hikub01 #删除部署 kubectl delete deployment hikub01 #停掉minikube minikube stop #清理全部下载的信息 minikube delete
常见问题:
1、如果一直无法创建pod,那就是无法从google下载需要的镜像,需要配置docker的代理
#查看pod状况 kubectl get pods #查看docker日志 journalctl -u docker.service #测试是否可以联通 curl --proxy "" https://cloud.google.com/container-registry/
有两种方法来解决
1.1、用代理的方法来解决
#测试代理是否可以联通 curl --proxy "http://ip:port" https://cloud.google.com/container-registry/ #如果代理可以联通,就要配置docker守护进程使用代理了 sudo vim /etc/default/docker #在文件中增加以下两行 http_proxy="ip:port" https_proxy="ip:port" #重启docker守护进程 sudo service docker restart
1.2、用国内镜像来解决
sudo docker pull registry.aliyuncs.com/archon/pause-amd64:3.0
2、未安装auplink
Couldn't run auplink before unmount: exec: "auplink": executable file not found in $PATH
sudo apt-get install cgroup-lite sudo apt-get install aufs-tools