Docker安装jenkins

Title Docker安装jenkins
Framework Docker
User wy8817399@vip.qq.com
Id 98
Created 10/1/26, 1:50 AM
Modified 10/2/26, 3:31 AM
Published Yes
Content

1、创建Docker目录

sudo mkdir /Docker

 

2、创建docker-compose.yml文件

services:
  jenkins:
    image: jenkins/jenkins:lts   # 官方 LTS 长期支持版;上服务器建议固定版本号,如 jenkins/jenkins:2.492.3-lts
    container_name: jenkins
    restart: unless-stopped
    environment:
      #-----------------------------------------------------------------------
      # 【时区】界面时间戳显示为东八区
      #-----------------------------------------------------------------------
      TZ: Asia/Shanghai

      #-----------------------------------------------------------------------
      # 【JVM 内存】Jenkins 本身是 Java 进程
      # 默认用容器内存的 50%,最大堆 4G;机器内存紧张时可手动压低,如 -Xmx1g
      # 前者是初始堆,后者是最大堆
      #-----------------------------------------------------------------------
      JAVA_OPTS: "-Duser.timezone=Asia/Shanghai"
      # JAVA_OPTS: "-Xms512m -Xmx2g -Duser.timezone=Asia/Shanghai"

      #-----------------------------------------------------------------------
      # 【Jenkins 参数】Jenkins 自身运行参数
      # --httpPort=8080      Web 端口(默认 8080,改了的话 ports 映射也要同步改)
      # --prefix=/jenkins    URL 前缀,想用 http://IP:8080/jenkins 访问时加(默认无前缀)
      #-----------------------------------------------------------------------
      # JENKINS_OPTS: "--httpPort=8080 --prefix=/jenkins"

    ports:
      - "9090:8080"                   # Jenkins Web 界面
      - "50000:50000"                # Jenkins agent 通信端口(分布式构建时 agent 反连 master 用,单机可映射但不常用)

    volumes:
      # Jenkins 全部数据:任务配置、构建历史、插件、凭据,都在这个目录
      # 迁移服务器时把 ./jenkins/data 打包带走即可
      - ./jenkins/data:/var/jenkins_home

      #-----------------------------------------------------------------------
      # 【Docker-in-Docker】构建任务里要执行 docker 命令(打镜像、跑容器)时开启
      # 注意两点:
      #   1. jenkins/jenkins 官方镜像内没有 docker CLI,需进容器装:
      #      docker exec -u root jenkins bash -c "curl -fsSL https://get.docker.com | sh"
      #   2. 挂载宿主 docker.sock 意味着 Jenkins 拿到宿主机 root 级权限,仅内网/测试环境这么干
      #-----------------------------------------------------------------------
      # - /var/run/docker.sock:/var/run/docker.sock

    networks:
      - timeless

networks:
  timeless:
    name: timeless
    driver: bridge

 

3、如果执行报错,多半是权限问题。

sudo chown -R 1000:1000 /Docker/jenkins/data

 

4、获取初始密码

docker exec jenkins cat /var/jenkins_home/secrets/initialAdminPassword

 

5、web浏览器访问

http://192.168.20.140:9090/

 

6、插件安装

# Plugins(插件管理)
1、Maven Integration
2、Locale(中文)
3、Localization: Chinese (Simplified)
4、GitLab Plugin

#Tools(全局工具配置)
1、配 Maven/JDK,加一个自动安装的 Maven

#Credentials(凭据)
1、存密码/Token,存 GitLab 的访问凭据,配拉代码时用