k8s集群部署springcloud 单应用

  • docker配置docker私库
  • docker build 镜像
  • k8s集群部署 镜像
  • 验证部署结果

1. docker配置docker私库

1.1 编辑/etc/sysconfig/docker

cat /etc/sysconfig/docker
# /etc/sysconfig/docker# Modify these options if you want to change the way the docker daemon runs
OPTIONS='--selinux-enabled --log-driver=journald --signature-verification=false --insecure-registry docker.hbg.io '
if [ -z "${DOCKER_CERT_PATH}" ]; thenDOCKER_CERT_PATH=/etc/docker
fiADD_REGISTRY='--insecure-registry docker.hbg.io'
# Do not add registries in this file anymore. Use /etc/containers/registries.conf
# from the atomic-registries package.
## docker-latest daemon can be used by starting the docker-latest unitfile.
# To use docker-latest client, uncomment below lines
#DOCKERBINARY=/usr/bin/docker-latest
#DOCKERDBINARY=/usr/bin/dockerd-latest
#DOCKER_CONTAINERD_BINARY=/usr/bin/docker-containerd-latest
#DOCKER_CONTAINERD_SHIM_BINARY=/usr/bin/docker-containerd-shim-latest
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20

OPTIONS中添加 –insecure-registry docker.hbg.io 
添加一行 ADD_REGISTRY=’–insecure-registry docker.hbg.io’ 
重启docker 
docker.hbg.io 为私库地址

登录私库

# docker login docker.hbg.io
Username: ****
Password:
Login Succeeded
  • 1
  • 2
  • 3
  • 4

部署时 如果私库需要登录则要创建一个secret ,如下:

kubectl create secret docker-registry docker.hbg.io --docker-server=docker.hbg.io --docker-username=【你的用户名】 --docker-password=【用户名密码】 --docker-email=【邮箱】
  • 1

2. docker build 镜像

2.1 maven 打jar包

mvn install

2.2 编写Dockerfile

[root@master eureka]# pwd
/root/apps/eureka
[root@master eureka]# ll
总用量 39112
-rwxrwxrwx 1 root root      118 10月 12 11:26 build.sh
-rwxrwxrwx 1 root root 40039685 10月 12 13:00 cloud-eureka-server-1.0.0.jar
-rwxrwxrwx 1 root root      182 10月 12 11:22 Dockerfile
[root@master eureka]# cat  Dockerfile
FROM java:8VOLUME /tmpADD *.jar app.jarRUN sh -c 'touch /app.jar'ENV JAVA_OPTS=""CMD exec java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom  -jar /app.jar
[root@master eureka]# cat build.sh
docker build -t docker.hbg.io/cdchen/eureka:1.0.0 /root/apps/eureka && docker push docker.hbg.io/cdchen/eureka:1.0.0 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21

开始build

[root@master eureka]# ./build.sh
Sending build context to Docker daemon 40.04 MB
Step 1 : FROM java:8
Trying to pull repository docker.io/library/java ...
8: Pulling from docker.io/library/java
5040bd298390: Pull complete
fce5728aad85: Pull complete
76610ec20bf5: Pull complete
60170fec2151: Pull complete
e98f73de8f0d: Pull complete
11f7af24ed9c: Pull complete
49e2d6393f32: Pull complete
bb9cdec9c7f3: Pull complete
Digest: sha256:c1ff613e8ba25833d2e1940da0940c3824f03f802c449f3d1815a66b7f8c0e9d---> d23bdf5b1b1b
Step 2 : VOLUME /tmp---> Running in c922ea759ecd
 ---> 90e6bfb979be
Removing intermediate container c922ea759ecd
Step 3 : ADD *.jar app.jar---> 22693545d892
Removing intermediate container 1eae1ee6e02e
Step 4 : RUN sh -c 'touch /app.jar'---> Running in 4a3f242329a7
 ---> 7655007ab702
Removing intermediate container 4a3f242329a7
Step 5 : ENV JAVA_OPTS ""---> Running in f2e6a37c62e9
 ---> 463cb7c6074d
Removing intermediate container f2e6a37c62e9
Step 6 : CMD exec java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom  -jar /app.jar---> Running in 299051efb456
 ---> 54c5b40ddedf
Removing intermediate container 299051efb456
Successfully built 54c5b40ddedf
The push refers to a repository [docker.hbg.io/cdchen/eureka]
de6598ca7626: Pushed
818fc746fd69: Pushed
35c20f26d188: Pushed
c3fe59dd9556: Pushed
6ed1a81ba5b6: Pushed
a3483ce177ce: Pushed
ce6c8756685b: Pushed
30339f20ced0: Pushed
0eb22bfb707d: Pushed
a2ae92ffcd29: Pushed
1.0.0: digest: sha256:430e3db388ecc253acd64c97eae3b169732dc1c98e79e2c2f29c1aba679bbaec size: 2424
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47

3. k8s部署镜像

3.1 部署

使用 k8s webUI部署 如下图 

点击 SHOW ADVANCED OPTIONS选择拉取镜像的秘钥 
找到image pull secret 

点击DEPLOY

4. 验证部署结果

查看nodePort

# kubectl describe service/cloud-eureka-server
Name:                   cloud-eureka-server
Namespace:              default
Labels:                 app=cloud-eureka-serverversion=1.0.0
Selector:               app=cloud-eureka-server,version=1.0.0
Type:                   LoadBalancer
IP:                     10.254.247.31
Port:                   tcp-8888-8888-c73x7     8888/TCP
NodePort:               tcp-8888-8888-c73x7     31427/TCP
Endpoints:              172.17.26.2:8888
Session Affinity:       None
No events.
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

在 node1 和 node2 中执行docker ps 看pod运行在哪一台上。

浏览器访问: 
http://node2:31427/ 
如下图,证明启动成功 

k8s集群部署springcloud 单应用相关推荐

  1. Kubeadm安装高可用的K8S集群--多master单node

    Kubeadm安装高可用的K8S集群–多master单node master1 IP 192.168.1.180/24 OS Centos7.6 master2 IP 192.168.1.181/24 ...

  2. 【好文收藏】K8S集群部署CoreDNS服务

    K8S集群部署CoreDNS服务 k8s集群中的应用通常是通过ingress实现微服务发布的,前文介绍过在K8S集群中使用traefik实现服务的自动发布,其实现方式是traefik通过集群的DNS服 ...

  3. Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录

    0.目录 整体架构目录:ASP.NET Core分布式项目实战-目录 k8s架构目录:Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录 一.感谢 在此感谢.net ...

  4. 【k8s系列001】K8s集群部署H2O

    一.k3s集群部署 https://docs.rancher.cn/docs/k3s/_index k3s官网 1.安装master curl -sfL http://rancher-mirror.c ...

  5. 利用k8s集群部署第一个容器化应用

    准备工作 按照这篇文章描述的流程搭建好k8s集群. 部署nginx Kubernetes 跟 Docker 等很多项目最大的不同,就在于它不推荐你使用命令行的方式直接运行容器(虽然 Kubernete ...

  6. k8s集群部署中etcd启动报错request sent was ignored (cluster ID mismatch: peer[c39bdec535db1fd5]=cdf818194e3a8c

    k8s集群部署中etcd启动报错处理 报错信息如下,主要报错信息有两条 原因是/var/lib/etcd/目录下缓存导致 解决方法 问题2: Error starting daemon: SELinu ...

  7. K8S集群部署kube-Prometheus监控Ceph(版本octopus)集群、并实现告警。

    K8S集群部署kube-Prometheus监控Ceph(版本octopus)集群.并实现告警. 一.背景描述 公司K8S集群后端存储采用的是cephfs,测试环境经常性出现存储故障,虽然最后都解决了 ...

  8. k8s集群部署springboot项目

    一.前言 本篇,我们将基于k8s集群,模拟一个比较接近实际业务的使用场景,使用k8s集群部署一个springboot的项目,我们的需求是: 部署SpringBoot项目到阿里云服务器 : 基于容器打包 ...

  9. Rancher2.x安装及k8s集群部署

    安装Rancher Rancher是业界唯一完全开源的企业级容器管理平台,为企业用户提供在生产环境中落地使用容器所需的一切功能与组件. Rancher2.0基于Kubernetes构建,使用Ranch ...

最新文章

  1. 【软件工程】VB版机房文档总结
  2. 成都大学的计算机排名,成都除了成都大学,还有2所985、4所211,含金量很高
  3. Android项目中出现的Plugin with id ‘kotlin-android‘ not found解决方法
  4. macOS完全卸载Android Studio方法
  5. Dokcer进阶之Compose 实战官方flask、wordpress、spring-boot
  6. 在python中terminal中建立mysql数据库,无法再models.py 文件中建立数据库信息
  7. scala to java_Scala 2.13 以后Java集合与Scala集合互相转换
  8. Java注释:探究和解释
  9. vscode php插件_vscode+phpstudy+xdebug无法断点(踩坑记)
  10. TCP的send与recv函数小结
  11. 在Python中使用XGBoost和scikit-learn进行随机梯度增强
  12. 模板:微信小程序商城模板
  13. 最小二乘法及其代码实现
  14. html的excel表格自动换行,excel自动换行总结
  15. 【正一专栏】西甲天王山之战梅西一剑封喉!
  16. 先进级!阿里云大数据+AI平台通过信通院数据平台整体解决方案最高等级评测
  17. js中数组的entries方法
  18. 2021年小红书KOL营销白皮书
  19. 关于MOTOROLA O202C无线座机 来电响一声故障
  20. paypal余额限制_如何将您的PayPal余额转换成可以在任何地方消费的借记卡

热门文章

  1. c语言与php的对比,对比C语言学习PHP
  2. 用友U8物料最后一次出入库日期及计算实际库龄
  3. reshape [] matlab,matlab之reshape函数
  4. java连连看如何结束游戏_java 连连看游戏
  5. Vmware 转换 Hyper-V
  6. 按花生酱,赞不绝口——敏捷12准则的敏捷解释
  7. d2387(d2387车次途经站点)
  8. WGS84对比CSCS2000
  9. 乙肝患者不知规范治疗
  10. Unity快速入门之三 脚本与事件