Kubernetes/k8s(三)k8s创建jar包docker镜像的pod
这里写目录标题一、项目打成jar包二、创建Dockerfile文件三、构建镜像四、编写Deployment,Service的yaml文件五、验证测试一、项目打成jar包可以通过Maven的install进行打包。这里我是用的一个springboot的demo。install成功后,在target包下可以找到项目的jar包。二、创建Dockerfile文件mkdir mydocker 创建文件夹,用
·
一、项目打成jar包
可以通过Maven的install进行打包。这里我是用的一个springboot的demo。
install成功后,在target包下可以找到项目的jar包。
二、创建Dockerfile文件
- mkdir mydocker 创建文件夹,用来存放jar包和后面创建的Dockerfile。这里我创建的文件夹是mydocker。
- 上传jar包到mydocker。
- 在mydocker路径下, vim Dockerfile创建Dokcerfile文件。
- 编写相关脚本代码:
FROM java:8 #基础镜像,如果本地仓库没有,会从远程仓库拉取 MAINTAINER wei.zhou #创建人 ADD demo-0.0.1-SNAPSHOT.jar demo.jar #第一个是jar包名称,第二个是重命名名称 EXPOSE 8080 #暴露端口 ENTRYPOINT ["java","-jar","demo.jar"]
三、构建镜像
docker build -f Dockerfile文件位置 -t 镜像名:版本 . 【末尾有个点,一点要注意】
因为我这里和Dockerfile是一个文件位置,所以直接是
docker build -t demo .
成功以后,执行docker images可以看到
四、编写Deployment,Service的yaml文件
vim svc-nodePort.yaml
以下是编辑内容:
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: myapp-demo
namespace: default
spec:
replicas: 3
selector:
matchLabels:
app: myapp
release: stabel
template:
metadata:
labels:
app: myapp
release: stabel
env: test
spec:
containers:
- name: myapp
image: demo
imagePullPolicy: IfNotPresent
ports:
- name: http
containerPort: 80
---
apiVersion: v1
kind: Service
metadata:
name: myapp
namespace: default
spec:
type: NodePort
selector:
app: myapp
release: stabel
ports:
- name: http
port: 8080
targetPort: 8080
nodePort: 30080
---
然后执行:
kubectl apply -f svc-deployment.yaml
最后执行
kubectl get pod
五、验证测试
通过之前yaml中的nodePort端口,也就是主ip/从ip:30080去访问。
更多推荐
已为社区贡献2条内容
所有评论(0)