Linux で継続的インテグレーションと継続的デプロイメント (CI/CD) を構成する方法
現代のソフトウェア開発では、継続的インテグレーションと継続的デプロイメント (CI/CD) が多くのチームの開発プロセスで不可欠になっています。一部の。これらは、開発者がコードを迅速かつ効率的に構築、テスト、展開するのに役立ちます。この記事では、Linux システム上で継続的統合と継続的デプロイメントを構成する方法を紹介し、読者の理解を深めるためにいくつかのコード例を示します。
まず、必要なツールと依存関係を 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
次に、コードを保存するために Github にリポジトリを作成する必要があります。 。コード リポジトリの名前が my-project
であるとします。 Github で新しいリポジトリを作成し、ローカルにクローンを作成します。
git clone https://github.com/your-username/my-project.git
クローンされたローカル リポジトリで、コードを作成してテストします。この例では、単純な Python プログラムを使用してデモを行います。
# app.py def hello_world(): return "Hello, World!" print(hello_world())
# 运行测试 python app.py
次のステップでは、アプリケーションをコンテナ化するための 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
Docker コンテナーが動作するようになったので、コードを自動的にビルド、テスト、デプロイするように Jenkins を構成する必要があります。ブラウザを開いて http://localhost:8080
にアクセスし、Jenkins 管理インターフェイスを開きます。画面上の指示に従って初期セットアップを完了します。
次に、Docker と Git の統合をサポートするために、いくつかの Jenkins プラグインをインストールする必要があります。 Jenkins 管理インターフェイスで、[プラグイン管理] をクリックし、[オプションのプラグイン] を選択します。次のプラグインを検索してインストールします:
Jenkins 管理インターフェイスのホームページで、[新しいタスク] をクリックして新しい Jenkins パイプラインを作成します。 Pipeline プロジェクトを選択し、my-pipeline
などの名前を付けます。 [パイプライン] タブで、[SCM からのパイプライン スクリプト] を選択し、次の情報を入力します:
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" } } } }
コードと Jenkinsfile を保存し、Github リポジトリに送信します。次に、Jenkins 管理インターフェイスに戻り、my-pipeline
タスクをクリックし、[今すぐビルド] を選択して Jenkins パイプラインを実行します。 Jenkins は自動的にコードのクローンを作成し、Docker イメージを構築し、テストを実行してアプリケーションをデプロイします。
http://localhost:5000
にアクセスすると、正常にデプロイされたアプリケーションを確認できるはずです。
概要
上記の手順により、Linux システム上で単純な CI/CD プロセスを正常に構成できました。コード ベースに変更が加えられると、Jenkins はアプリケーションを自動的にビルド、テスト、デプロイします。この例で使用されているツールは 1 つの組み合わせにすぎず、実際の構成はプロジェクトの特定のニーズに応じて異なる場合があります。ただし、この例は、継続的インテグレーションと継続的デプロイメントの使用を開始して開発効率を向上させるための出発点として使用できます。
以上がLinux で継続的インテグレーションと継続的デプロイ (CI/CD) を構成する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。