|NO.Z.00391|——————————|CloudNative|——|KuberNetes&CI/CD.V29|——|Jenkins.v09|自动构建NodeJs应用.v03|
一、配置Jenkins
### --- 添加Job:基于spring-cloud-demo复制Job
~~~ NewItem——>Enter an item name:nodejs-demo——>Copy from:spring-cloud-demo——>ok
二、更改配置参数:
### --- 更改配置参数
~~~ Description:NodeJS项目——>List Git branches(and more)——>Repository URL:git@gitlab.test.com:kubernetes-guide/nodejs-demo.git——>
~~~ ——>Hidden Parameter——>Name:REPO_URL——>Default Value:git@gitlab.test.com:kubernetes-guide/nodejs-demo.git——>
~~~ ——>Multi-line String Parameter——>Name:BUILD_COMMAND——>Default Value:npm install——>
~~~ ——>Hidden Parameter——>Name:REGISTRY_DIR——>DefaultValue:nodejs-demo-yanqi——>
~~~ ——>Hidden Parameter——>Name:IMAGE_NAME——>Default Value:nodejs-demo——>
~~~ ——>Hidden Parameter——>Name:DEPLOY_LABEL——>Default Value:app=nodejs-demo——>
~~~ ——>Hidden Parameter——>Name:CONTAINER_NAME——>Default Value:nodejs-demo——>
~~~ ——>Hidden Parameter——>Name:NAMESPACE——>Default Value:nodejs-test——>
~~~ ——>Pipeline——>Branches to build——>Branch Specifier(blank for 'any'):*/node-pipeline——>Save——>END
三、进行build构建,查看生成的镜像
### --- 查看构建的job
[root@k8s-master01 NodeJS]# kubectl get po -owide
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
nodejs-demo-1-g9ch7-bw69h-rbzrg 4/4 Running 0 71s 172.17.125.31 k8s-node01 <none> <none>
四、查看构建记录


五、测试制作的nodejs镜像;是否可以正常访问
### --- 登入到阿里云镜像版本库
[root@k8s-master01 NodeJS]# docker login registry.cn-beijing.aliyuncs.com
Username: yanqi_vip
Password:
https://docs.docker.com/engine/reference/commandline/login/#credentials-store
Login Succeeded
### --- 启动制作的NodeJS镜像
~~~ 服务正常启动
[root@k8s-master01 NodeJS]# docker run -ti --rm registry.cn-beijing.aliyuncs.com/nodejs-demo-yanqi/nodejs-demo:20210623-134545-4a99eb2-master
npm info using npm@2.14.7
npm info using node@v4.2.3
npm info prestart nodejs-demoapp@1.0.0
npm info start nodejs-demoapp@1.0.0
> nodejs-demoapp@1.0.0 start /app
> node server.js
### --- 测试NodeJS启动的容器是否可以正常访问
~~~ 可以正常访问,可用于jenkins持续部署的业务镜像
[root@k8s-master01 NodeJS]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
6955a94f229f registry.cn-beijing.aliyuncs.com/nodejs-demo-yanqi/nodejs-demo:20210623-134545-4a99eb2-master "npm start" 39 seconds ago Up 35 seconds 3000/tcp nifty_davinci
[root@k8s-master01 NodeJS]# docker exec -ti 6955a94f22 bash
root@6955a94f229f:/app# curl 127.0.0.1:3000
Hello World!
Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart
——W.S.Landor
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通