在k8s上运行第一个应用

创建server.js,输入以下代码创建helloworld网页

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);

编写Dockerfile文件

FROM node:6.9.2
EXPOSE 8080
COPY server.js .
CMD node server.js

其中,FROM是从官方镜像库取得node的镜像,EXPOSE表示暴露本容器的8080端口,COPY将server.js加入容器,CMD为容器中执行的命令

创建镜像(这一步骤需要在联网的docker环境上运行,也可以首先把node:6.9.2基础镜像导出到测试环境上)

docker build -t hello-node:v1 .

导出镜像

docker save hello-node:v1 -o node.tar

上传镜像到集群所有工作节点(如果不是所有节点都上传,那么在创建pod的时候,如果pod落在了没有镜像的节点上,pod将创建失败)

加载镜像

docker load < node.tar

创建myweb-rc.yaml

apiVersion: v1
kind: ReplicationController
metadata:
  name: myweb
spec:
  replicas: 5
  selector:
    app: myweb
  template:
    metadata:
      labels:
        app: myweb
    spec:
      containers:
      - name: myweb
        image: hello-node:v1
        ports: 
        - containerPort: 8080

创建pod

kubectl apply -f myweb-rc.yaml 

创建myweb-svc.yaml

apiVersion: v1
kind: Service
metadata: 
  name: myweb
spec:
  type: NodePort
  ports:
    - port: 8080
      nodePort: 30000
  selector:
    app: myweb

创建service

kubectl apply -f myweb-svc.yaml

浏览器访问http://nodeip:30000/

http://10.161.249.7:30000/
Hello World!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值