通过k8s+docker部署jar
1、springboot打包生成一个jar,example-0.0.1-SNAPSHOT.jar2、通过java -jar example-0.0.1-SNAPSHOT.jar 可以启动服务服务器能访问:http://localhost:8989/hello3、新建文件Dockerfile ,内容如下:######################################FR...
1、springboot打包生成一个jar,example-0.0.1-SNAPSHOT.jar
2、通过java -jar example-0.0.1-SNAPSHOT.jar 可以启动服务
服务器能访问:http://localhost:8989/hello
3、新建文件Dockerfile ,内容如下:
######################################
FROM openjdk:8-jre-alpine
MAINTAINER Ma Lizhi
COPY example-0.0.1-SNAPSHOT.jar /app.jar
CMD java -jar /app.jar
EXPOSE 8989
######################################
4、通过如下命令生成镜像helloworld
[noteuser@note-02 example]$ docker build -t helloworld .
5、在k8s集群内部所有的机器的docker环境中执行部署4
6、新建helloworld.yaml文件
######################################
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: helloworld-pod
spec:
replicas: 3
template:
metadata:
labels:
app: helloworld-pod
spec:
containers:
- name: helloworld
image: helloworld
imagePullPolicy: Never
ports:
- containerPort: 8989
######################################
创建pod
[noteuser@note-02 example]$ kubectl apply -f helloworld.yaml
7、创建svc
######################################
apiVersion: v1
kind: Service
metadata:
name: helloworld-svc
spec:
selector:
app: helloworld-pod
ports:
- name: http
port: 8000
protocol: TCP
targetPort: 8989
nodePort: 31000
type: NodePort
######################################
8、从集群外部可以通过任一ip访问:
http://10.129.252.216:31000/hello
[noteuser@note-02 example]$ kubectl get nodes
NAME STATUS ROLES AGE VERSION
10.129.252.215 Ready,SchedulingDisabled master 17d v1.15.0
10.129.252.216 Ready node 17d v1.15.0
10.129.252.217 Ready,SchedulingDisabled master 17d v1.15.0
10.129.252.232 Ready node 17d v1.15.0
更多推荐
所有评论(0)