1) 创建目录
mkdir /root/dockerfilecd /root/dockerfile
2)创建示例脚本: app.js
cat >app.js <<'EOF'const http = require('http');const os = require('os');console.log("Kubia server starting...");var handler = function(request, response) { console.log("Received request from " + request.connection.remoteAddress); response.writeHead(200); response.end("You've hit " + os.hostname() + "\n");};var www = http.createServer(handler);www.listen(8080);EOF
3)创建Dockerfile
cat >Dockerfile <<'EOF'FROM node:7ADD app.js /app.jsENTRYPOINT ["node", "app.js"]EOF
4)构建容器镜像
docker build -t kubia .
5)docker相关操作(仅练习用)
docker run --name kubia-container -p 8080:8080 -d kubiacurl localhost:8080docker psdocker inspect kubia-containerdocker exec -it kubia-container bashdocker stop kubia-containerdocker rm kubia-container
6)上传镜像到仓库
docker image tag kubia 10.0.0.10:5000/luksa/kubiadocker image push 10.0.0.10:5000/luksa/kubia
7)kubectl相关操作(仅练习用)
kubectl run kubia --image=luksa/kubia --port=8080 --generator=run/v1kubectl get podskubectl expose rc kubia --type=LoadBalancer --name kubia-httpkubectl get svc#注意:K8S 1.21 已经弃用--generator= ,解决如下kubectl run kubia --image=luksa/kubia --port=8080kubectl expose pod kubia --type=NodePort ##############################################curl 104.155.74.57:8080kubectl get rckubectl scale rc kubia --replicas=3kubectl get rckubectl get pods -o widekubectl describe pod kubia-hczjikubectl delete services kubiakubectl delete pods kubia