:::info 视频演示 https://www.bilibili.com/video/BV1P341117w3/ :::

准备

  1. mkdir $PWD/data
  2. chown -R 1000:1000 $PWD/data
  3. sudo chown -R 1000:1000 /var/run/docker.sock

docker-compose.yml

  1. cat > docker-compose.yml << EOF
  2. version: "3.7"
  3. services:
  4. jenkins:
  5. image: jenkinsci/blueocean:latest
  6. container_name: jenkins
  7. privileged: true
  8. restart: always
  9. ports:
  10. - 8888:8080
  11. environment:
  12. - TZ=Asia/Shanghai
  13. volumes:
  14. # 持久化
  15. - $PWD/data:/var/jenkins_home
  16. # docker 以tcp://xxx.xxx.xxx.xxx:2375 方式调用宿主 docker, 可不配置
  17. # - /usr/bin/docker:/bin/docker
  18. #- /var/run/docker.sock:/var/run/docker.sock
  19. # - /usr/lib/x86_64-linux-gnu/libltdl.so.7:/usr/lib/x86_64-linux-gnu/libltdl.so.7
  20. EOF

解锁密码

  1. cat $PWD/jenkins/secrets/initialAdminPassword

插件加速

  1. sed -i "s/http:\/\/updates.jenkins-ci.org\/download/https:\/\/mirrors.tuna.tsinghua.edu.cn\/jenkins/g" $PWD/data/updates/default.json
  2. sed -i "s/http:\/\/www.google.com/https:\/\/www.baidu.com/g" $PWD/data/updates/default.json

插件

  • gitea :: 连接gitea服务器
  • git parameter :: 代码分支变量
  • docker plugin
  • Docker Build and Publish
  • Publish Over SSH :: 传文件与执行shell
  • SSH :: 执行shell
  • Role-based Authorization Strategy :: 权限管理