compose配置

docker pull jenkins/jenkins:lts-jdk17

创建compose目录

mkdir -p /root/docker/jenkins/

创建存放数据目录

mkdir -p /root/docker/jenkins/jenkins_data

chown -R 1000:1000 jenkins_data

compose.yml配置

version: "3.8"

services:
  jenkins:
    image: jenkins/jenkins:lts-jdk17
    container_name: jenkins
    restart: on-failure:3
    ports:
      - "8085:8080"
      - "50000:50000"
    environment:
      # 如果需要在 Jenkins 内部使用 docker 命令,通常需要设置 DOCKER_HOST
      - DOCKER_HOST=unix:///var/run/docker.sock
    volumes:
      # 1. 数据持久化:挂载到当前目录下的 jenkins_data 文件夹
      - ./jenkins_data:/var/jenkins_home
      # 2. Docker Socket:让 Jenkins 容器能控制宿主机的 Docker
      - /var/run/docker.sock:/var/run/docker.sock
      # 3. Docker 二进制文件:将宿主机的 docker 命令映射进去
      # 注意:这里不能直接写 $(which docker),必须写死宿主机的实际路径
      - /usr/bin/docker:/usr/bin/docker
    user: "0"
    # 如果提示找不到 docker 命令,可能需要添加 privileged: true

获取初始管理员密码

docker logs -f jenkins

初始密码:d4b00609bec84735b2b29363472d9d1d

或者cat jenkins_data/secrets/initialAdminPassword

浏览器访问暴露端口 192.168.0.130:8085

安装插件

按推荐安装插件。 如插件下载缓慢,可修改 /var/jenkins_home/updates/default.json 为清华镜像:

sed -i 's#updates.jenkins-ci.org/download#mirrors.tuna.tsinghua.edu.cn/jenkins#g' /var/jenkins_home/updates/default.json
docker restart jenkins

自定义安装插件

选择 git 语言包等

完成后,可以创建新得管理员 也可以继续使用admin

进入后修改默认密码:123456 这是必要修改的

项目集成

先将下项目直接git clone到 linux系统上运行测试

git clone http://192.168.0.130:3000/root/Go_code_hub_01.git

进入目录下进行编译

go build

这时候可能会因为 无法拉取依赖插件编译失败需要替换下载源

go env -w GOPROXY=https://mirrors.aliyun.com/goproxy/,direct

然后再编译构建,完成后会生成个可执行文件 ,

./PGsql_Tool 2026/03/29 11:35:13 Successfully connected to PostgreSQL! 🚀 Server starting on port 8080...

📍 Available routes: http://localhost:8080/

从主机访问 端口,说明我们的项目没问题

接下来就可以配置 cicd自动化了