1.开始部署
以开发者账号(project-med-regular)登录KubeSphere
应用负载->自制应用->创建
1.填入基本信息
2.创建服务->无状态服务
基本信息设置里-只有名称必填 填 名称 即可
重点在容器组设置:
3.添加容器
容器副本: 一个就行
添加容器:重点是 镜像仓库和镜像选择 自定义内网harbo仓库
搜索框中输入需要部署的镜像(如:demo/nginx)搜索就可以搜索到结果,选择版本号即可:
容器端口:选择使用默认镜像端口(就是Dockerfile中EXPOSE定义的镜像端口),启动命令手动指定tomcat启动命令
之后直接下一步到"路由设置":
4.检查服务状态
基本部署完成了。检查下服务状态:
应用负载->自制应用->点击刚刚部署的应用
服务运行正常。还有两个路由,点击 访问服务(server是后端服务,这里点击*Web)
访问前还需要配置域名映射:参考2.KubeSphereV3.4部署并访问 Bookinfo(包含:启用服务网格、用户、角色、企业空间、启用网关)
只是这里需要将域名改为 test.com
应用还是报错的。还没有配置:配置文件的挂载。前端还不能访问后端接口。
5.配置文件挂载
配置文件采用configMap存储挂载
配置->配置字典:
将项目需要的配置文件都加上:
工作负载->phss-v1->更多操作->编辑设置:
将4个配置文件挂载到指定位置。
注意:需要指定子路径
验证配置生效:
此时可以正确访问后端应用了。
6.部署自研应用时添加configmap配置后无法启动问题
报错信息:
ubuntu@master:~$ kubectl -n *** get pod
NAME READY STATUS RESTARTS AGE
***-v1-65f4ddf76f-r24zr 1/1 Running 0 84m
***-v1-67c849d6c4-7c94f 0/1 CrashLoopBackOff 5 (2m36s ago) 5m30s
pod详细:
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Normal Scheduled 7m14s default-scheduler Successfully assigned **/**-v1-67c849d6c4-7c94f to node2
Warning Failed 6m34s (x4 over 7m13s) kubelet Error: failed to start container "container-****": Error response from daemon: failed to create task for container: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: exec: "catalina.sh": executable file not found in $PATH: unknown
Normal Pulling 5m44s (x5 over 7m14s) kubelet Pulling image "
Warning BackOff 2m8s (x23 over 6m58s) kubelet Back-off restarting failed container
是部署应用时 存储 配置字典(configmap) 挂载配置文件时配置不对。以下是正确的配置文件挂载配置:
与yaml配置文件对应