Skip to content

jenkins连接gitee自动化部署

点此跳转至搭建的jenkins

1. 首先准备一个服务器,我是在阿里云上买的,安装docker

方法一

js
1. 安装必要的依赖工具
// yum-utils提供了 yum-config-manager工具,我们需要用它来添加 Docker 的官方仓库。
sudo yum install -y yum-utils

2.添加 Docker 官方仓库
// 通过以下命令设置稳定的仓库
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

3. 安装 Docker 引擎
安装最新版本的 Docker CE(社区版)、CLI 和 Containerd。

sudo yum install -y docker-ce docker-ce-cli containerd.io

4. 启动并设置开机自启

// 启动 Docker 服务
sudo systemctl start docker

// 设置系统开机自动启动 Docker
sudo systemctl enable docker

// 验证安装

运行经典的 hello-world镜像来测试 Docker 是否正确安装和运行。

sudo docker run hello-world

方法二

对于想要快速搭建测试环境的用户,Docker 官方提供了一个自动化安装脚本。
注意:​​ 此方法通常不用于生产环境,因为它允许配置自定义参数,可能存在一定风险。

bash
# 下载脚本并执行
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh

执行后脚本会自动完成所有安装步骤。

基本命令管理

bash
# 查看 Docker 状态
sudo systemctl status docker

# 停止 Docker
sudo systemctl stop docker

# 重启 Docker
sudo systemctl restart docker

2. 通过docker安装jenkins

创建并运行 Jenkins 容器

方法一:快速安装(最简单)
bash
docker run -d \
  --name jenkins \
  -p 8080:8080 \
  -p 50000:50000 \
  -v jenkins_home:/var/jenkins_home \
  jenkins/jenkins:lts-jdk17

查看容器运行状态

bash
docker ps

查看初始管理员密码

bash
docker logs jenkins 2>&1 | grep "Please use the following password"
方法二 推荐安装(包含 Docker-in-Docker 功能)

为了让 Jenkins 能够在容器内使用 Docker 命令来构建镜像,需要额外的配置:

bash
# 创建并运行 Jenkins 容器(支持 Docker-in-Docker)
docker run -d \
  --name jenkins \
  -p 8080:8080 \
  -p 50000:50000 \
  -v jenkins_home:/var/jenkins_home \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -v /usr/bin/docker:/usr/bin/docker \
  --privileged \
  jenkins/jenkins:lts-jdk17
方法三:使用 Docker Compose(推荐用于生产环境)

创建 docker-compose.yml文件:

yaml
version: '3.8'
services:
  jenkins:
    image: jenkins/jenkins:lts-jdk17
    container_name: jenkins
    privileged: true
    user: root
    ports:
      - "8080:8080"
      - "50000:50000"
    volumes:
      - jenkins_data:/var/jenkins_home
      - /var/run/docker.sock:/var/run/docker.sock
      - /usr/bin/docker:/usr/bin/docker
    environment:
      - JAVA_OPTS=-Djava.awt.headless=true
    restart: unless-stopped

volumes:
  jenkins_data:

然后运行:

bash
docker-compose up -d

Last updated: