>  기사  >  운영 및 유지보수  >  Linux에서 CI/CD(지속적인 통합 및 지속적인 배포)를 구성하는 방법

Linux에서 CI/CD(지속적인 통합 및 지속적인 배포)를 구성하는 방법

王林
王林원래의
2023-07-05 23:13:051316검색

Linux에서 CI/CD(지속적 통합 및 지속적 배포)를 구성하는 방법

현대 소프트웨어 개발에서 CI/CD(지속적 통합 및 지속적 배포)는 많은 팀의 개발 프로세스에서 필수적인 부분이 되었습니다. 이는 개발자가 코드를 빠르고 효율적으로 구축, 테스트 및 배포하는 데 도움이 됩니다. 이 문서에서는 Linux 시스템에서 지속적인 통합 및 지속적인 배포를 구성하는 방법을 소개하고 독자의 이해를 돕기 위해 몇 가지 코드 예제를 제공합니다.

  1. 필요한 도구 및 종속성 설치

우선 Linux 시스템에 필요한 도구 및 종속성을 설치하는 것이 CI/CD 프로세스 구성의 첫 번째 단계입니다. 그중 가장 널리 사용되는 도구는 Git, Docker, Jenkins입니다. Ubuntu 시스템에 이러한 도구를 설치하는 샘플 명령은 다음과 같습니다.

# 安装Git
sudo apt update
sudo apt install git

# 安装Docker
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh

# 安装Jenkins
wget -q -O - https://pkg.jenkins.io/debian/jenkins.io.key | sudo apt-key add -
sudo sh -c 'echo deb http://pkg.jenkins.io/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list'
sudo apt update
sudo apt install jenkins
  1. Github 저장소 만들기

다음으로 코드를 저장할 Github에 저장소를 만들어야 합니다. 코드 저장소 이름이 my-project라고 가정해 보겠습니다. Github에 새 저장소를 만들고 로컬로 복제하세요. my-project。在Github上创建一个新的仓库,并将其克隆到本地:

git clone https://github.com/your-username/my-project.git
  1. 编写和测试代码

在克隆的本地仓库中,编写和测试你的代码。在这个例子中,我们使用一个简单的Python程序来演示:

# app.py
def hello_world():
    return "Hello, World!"

print(hello_world())
# 运行测试
python app.py
  1. 创建Docker镜像

下一步是创建一个Docker镜像,以便将应用程序容器化并轻松地在不同环境中部署。在代码仓库中创建一个名为Dockerfile的文件,并添加以下内容:

# 基于Python的Docker镜像
FROM python:3.8

# 复制代码到容器中
COPY app.py /app/app.py

# 设置工作目录
WORKDIR /app

# 安装依赖项
RUN pip install flask

# 暴露端口
EXPOSE 5000

# 运行应用程序
CMD [ "python", "app.py" ]

然后,使用以下命令构建并运行Docker镜像:

# 构建Docker镜像
docker build -t my-app .

# 运行Docker容器
docker run -p 5000:5000 my-app
  1. 配置Jenkins

现在我们已经有了一个可用的Docker容器,我们需要配置Jenkins来自动构建、测试和部署我们的代码。打开你的浏览器,并访问http://localhost:8080来打开Jenkins的管理界面。按照屏幕上的指示完成初始设置。

接下来,我们需要安装一些Jenkins插件,以支持Docker和Git集成。在Jenkins的管理界面上,点击“插件管理”,然后选择“可选插件”。搜索并安装以下插件:

  • Git Plugin
  • Docker Plugin
  • Pipeline Plugin
  1. 创建Jenkins Pipeline

在Jenkins管理界面的主页上,点击“新建任务”来创建一个新的Jenkins Pipeline。选择“流水线”项目,并给定一个名称,例如my-pipeline。在“流水线”选项卡中,选择“Pipeline script from SCM”,并填写以下信息:

  • SCM:Git
  • Repository URL:https://github.com/your-username/my-project.git
  • Script Path:Jenkinsfile

创建一个名为Jenkinsfile的文件,并添加以下内容:

pipeline {
    agent any

    stages {
        stage('Build') {
            steps {
                sh "docker build -t my-app ."
            }
        }
        stage('Test') {
            steps {
                sh "docker run my-app python app.py"
            }
        }
        stage('Deploy') {
            steps {
                sh "docker run -d -p 5000:5000 my-app"
            }
        }
    }
}
  1. 运行Jenkins Pipeline

保存并提交代码和Jenkinsfile到Github仓库。然后,回到Jenkins的管理界面,点击my-pipeline任务,并选择“立即构建”来运行Jenkins Pipeline。Jenkins将自动克隆代码、构建Docker镜像、运行测试并部署应用程序。

通过访问http://localhost:5000rrreee

    코드 작성 및 테스트

    복제된 로컬 저장소에서 코드를 작성하고 테스트하세요. 이 예에서는 간단한 Python 프로그램을 사용하여 다음을 보여줍니다.

    rrreeerrreee
      🎜Docker 이미지 만들기🎜🎜🎜다음 단계는 애플리케이션을 컨테이너화하고 쉽게 실행할 수 있도록 Docker 이미지를 만드는 것입니다. 다양한 환경에 배포됩니다. 코드 저장소에 Dockerfile이라는 파일을 만들고 다음 콘텐츠를 추가합니다. 🎜rrreee🎜 그런 다음 다음 명령을 사용하여 Docker 이미지를 빌드하고 실행합니다. 🎜rrreee
        🎜 Jenkins 구성🎜🎜🎜이제 작동하는 Docker 컨테이너가 있으므로 코드를 자동으로 빌드, 테스트 및 배포하도록 Jenkins를 구성해야 합니다. 브라우저를 열고 http://localhost:8080을 방문하여 Jenkins 관리 인터페이스를 엽니다. 화면의 지시에 따라 초기 설정을 완료하세요. 🎜🎜다음으로 Docker 및 Git 통합을 지원하기 위해 일부 Jenkins 플러그인을 설치해야 합니다. Jenkins 관리 인터페이스에서 "플러그인 관리"를 클릭한 다음 "선택적 플러그인"을 선택합니다. 다음 플러그인을 검색하고 설치하세요. 🎜
    🎜Git Plugin🎜🎜Docker Plugin🎜🎜Pipeline Plugin🎜
    🎜Create Jenkins Pipeline🎜🎜🎜Jenkins 관리 인터페이스 홈페이지 , "새 작업"을 클릭하여 새 Jenkins 파이프라인을 만듭니다. 파이프라인 프로젝트를 선택하고 my-pipeline과 같은 이름을 지정합니다. "Pipeline" 탭에서 "Pipeline script from SCM"을 선택하고 다음 정보를 입력합니다: 🎜
    🎜SCM: Git 🎜🎜Repository URL: https://github.com/your-username/my-project. git🎜🎜스크립트 경로:Jenkinsfile🎜
🎜Jenkinsfile이라는 파일을 만들고 다음 콘텐츠를 추가합니다. 🎜rrreee
    🎜Jenkins Pipeline 실행🎜🎜🎜 저장하고 코드와 Jenkinsfile을 Github 저장소에 제출하세요. 그런 다음 Jenkins 관리 인터페이스로 돌아가 my-pipeline 작업을 클릭하고 "지금 빌드"를 선택하여 Jenkins 파이프라인을 실행합니다. Jenkins는 자동으로 코드를 복제하고, Docker 이미지를 빌드하고, 테스트를 실행하고, 애플리케이션을 배포합니다. 🎜🎜http://localhost:5000을 방문하면 성공적으로 배포된 애플리케이션을 볼 수 있습니다. 🎜🎜요약🎜🎜위의 단계를 통해 Linux 시스템에서 간단한 CI/CD 프로세스를 성공적으로 구성했습니다. 코드 베이스가 변경되면 Jenkins는 자동으로 애플리케이션을 빌드, 테스트 및 배포합니다. 이 예에 사용된 도구는 하나의 조합일 뿐이며 실제 구성은 프로젝트의 특정 요구 사항에 따라 달라질 수 있습니다. 그러나 이 예는 지속적인 통합 및 지속적인 배포를 사용하여 개발 효율성을 향상시키는 데 도움이 되는 출발점이 될 수 있습니다. 🎜

위 내용은 Linux에서 CI/CD(지속적인 통합 및 지속적인 배포)를 구성하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.