本地创建docker-compose.yml文件并导入服务器根目录
version: "3.0"
services:
jenkins:
image: jenkins/jenkins
container_name: jenkins
volumes:
- ./home/jenkins_home/:/var/jenkins_home
- /var/run/docker.sock:/var/run/docker.sock
- /usr/bin/docker:/usr/bin/docker #可以在容器内使用docker命令
- /usr/local/bin/docker-compose:/usr/local/bin/docker-compose #可以在容器内使用docker-compose命令
user: root
ports:
- "10240:8080"
- "10241:50000"
expose:
- "50000"
- "8080"
privileged: true
restart: on-failure # 自动重启
environment:
- TZ=Asia/Shanghai # 解决容器 时区的问题
服务器执行docker-compose up -d
即可
执行成功后即可打开 服务器ip:10240 访问jinkins
三、配置jenkins
1、解锁jenkins
查询jenkins容器logs
docker logs jenkins
复制此串解锁密码粘贴到jenkins解锁
2、安装jenkins插件
使用推荐的即可
3、创建jenkins用户
根据提示创建jenkins用户即可,一般使用admin作为账号
4、安装gitee插件
选择不重启安装
安装完成后手动重启jenkins容器 docker restart jenkins
四、创建jenkins任务
使用自由风格创建
1、添加gitee url 并新增gitee凭证
填写gitee的账号密码
添加后选择凭证即可
2、配置gitee WebHooks
触发url
生成密码
在gitee配置webhooks
3、增加构建步骤
选择shell
cd /var/jenkins_home/workspace/nest-demo // 进入目录 docker-compose stop | true // 停止所有服务,买的服务器太拉胯,2C2G不停止会构建失败 docker-compose up -d --force-recreate --no-deps --build --remove-orphans server_demo
配置完成后保存即可
四、测试
在gitee webhooks点击测试尝试触发jenkins
查看控制台输出
显示成功,此时会出现和本地打包一样的mysql账号权限问题,配置一下即可
docker exec -it mysql_demo /bin/bash
mysql -uroot -p123456
CREATE USER 'demo_user'@'%' IDENTIFIED BY '123456';
GRANT ALL ON *.* TO 'demo_user'@'%';
ALTER USER 'demo_user'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
flush privileges;
![img](https://img-blog.csdnimg.cn/img_convert/66c702484f1b81a24c3979b1a42f14d1.png)
![img](https://img-blog.csdnimg.cn/img_convert/e869360dd508e2b823b9ff85ca5633a2.png)
**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**
https://bbs.csdn.net/forums/4304bb5a486d4c3ab8389e65ecb71ac0
g5q55-1725723179458)]
[外链图片转存中...(img-bR19UmrH-1725723179458)]
**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**
https://bbs.csdn.net/forums/4304bb5a486d4c3ab8389e65ecb71ac0