传统web服务迁移Kubernetes

1、搞定基础镜像

docker pull tomcat:8.0.51-alpine
docker tag tomcat:8.0.51-alpine 10.204.82.15/kubernetes/tomcat:8.0.51-alpine
docker push 10.204.82.15/kubernetes/tomcat:8.0.51-alpine

2、web应用服务打包

cd /root/kubernetes/k8s-web-demo/web-demo
mvn clean package
cd target
java -tf java -tf web-demo-1.0-SNAPSHOT.war

3、编写Dockerfile构建镜像 

FROM 10.204.82.15/kubernetes/tomcat:8.0.51-alpine

COPY target/ROOT /usr/local/tomcat/webapps/ROOT

COPY start.sh /usr/local/tomcat/bin/start.sh

ENTRYPOINT ["sh" , "/usr/local/tomcat/bin/start.sh"]
#!/bin/bash

sh /usr/local/tomcat/bin/startup.sh

tail -f /usr/local/tomcat/logs/catalina.out
--tomcat镜像启动测试
docker run -it --entrypoint bash 10.204.82.15/kubernetes/tomcat:8.0.51-alpine

--构建web镜像
docker build -t web:v1 .

--web镜像启动测试
docker run -it web:v1

--将web镜像推送到镜像仓库
docker tag web:v1 10.204.82.15/kubernetes/web:v1
docker push 10.204.82.15/kubernetes/web:v1

4、确定服务发现策略,编写web.yaml 

#deploy
apiVersion: apps/v1
kind: Deployment
metadata:
  name: web-demo
spec:
  selector:
    matchLabels:
      app: web-demo
  replicas: 1
  template:
    metadata:
      labels:
        app: web-demo
    spec:
      containers:
      - name: web-demo
        image: 10.204.82.15/kubernetes/web-demo:v1
        ports:
        - containerPort: 8080
---
#service
apiVersion: v1
kind: Service
metadata:
  name: web-demo
spec:
  ports:
  - port: 80
    protocol: TCP
    targetPort: 8080
  selector:
    app: web-demo
  type: ClusterIP

---
#ingress
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: web-demo
spec:
  rules:
  - host: web.xxxx.com
    http:
      paths:
      - path: /
        backend:
          serviceName: web-demo
          servicePort: 80

 5、启动web容器

kubectl apply -f web.yaml
 
kubectl get pods -o wide

6、本地域名绑定、服务访问

C:\Windows\System32\drivers\etc\hosts
10.204.82.16    web.xxxx.com

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值