隋Suinian
今、この記事を書き始めたまでは自宅で毎週平日だけでスリープ状態にしたい、彼女の暇な時間に自分のコードや記事を書くための唯一の週末は気分を持っていることを言わなければなりません。
序文
で使用される自動展開ツールを実行するために、あなたも、サーバー自体に良い環境を構築することができ、その後、あなたがプロジェクトを展開前には、アプリケーションをデプロイするためにドッカーを使用する方法について話しましたが、プロセスの自動化の展開で、実際には、ドッカーは必要ありませんコマンドへ。ドッカーが自動展開に影響を与えるが、より便利にしませんかそう。
このシナリオでは、私はジェンキンスgithubのと自動展開を達成するための一連のステップを関連付けるために使用しました。
ジェンキンスは、主に継続的に使用するJava言語で記述された継続的インテグレーション(CI)ツールは、ある、自動的にプロジェクトをビルドします。
実際には、代わりにジェンキンスの自分自身にプログラムを書き込むことが可能であるが、ここでの楽しさを体験するために、できるだけ早く展開を自動化するために、私はジェンキンスを使用します。
テキスト
まず、全体のプロセスを整理する必要があります
- コードは、コードの変更、コードのダウンロードを検出するために、githubの、ジェンキンスgithubのにアップロードされます。
- ダウンロードした後、ジェンキンスさんは、自動的に必要な依存関係をダウンロードし、あなたのコードをパッケージ化。
- 私たちの前に定義Dockerfile、ドッキングウィンドウのビルドコマンドの実行を通じて、ファイルを容器にパッケージ化されます。
- 展開は、アクセスポートは、テストが成功したリスニングされているかどうか、成功しています。
今、私たちは自動化環境を構築する必要があります。
、ジェンキンスのインストール
ジェンキンスは実行に基づいているため、まず、JDK、JDKをインストールします。あなたが既に持っている場合は、JDKは、この手順を無視することができます。
$ sudo apt update
$ sudo apt install openjdk-8-jdk
复制代码
そして、ここで私はUbuntuのシステムを使用して、ジェンキンスにリポジトリを追加し、そのキーを追加するために最初に、Debianのリポジトリを追加します。
$ 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
复制代码
ダウンロードが成功すると、ダウンロードが成功したジェンキンスあり、正常に動作するかどうかを判断するために、このコマンドを使用します。
$ systemctl status jenkins
复制代码
この時点で我々はあなたが8080が開いているポート開くことができないかどうかを確認するために、ポート8080を介してサーバーにアクセスするために、ジェンキンスページを入力することができます。
次いで、ガイドジェンキンスに応じて初期化作業:ジェンキンス生成されたパスワード、設定プラグイン、ユーザ作成は、JDKの位置を設定します。このシリーズが完了した後、ジェンキンス構成はこれに一時停止します。二、githubの設定
ジェンキンスが設定した後、我々は、検出されたコードはGitHubのジェンキンスの変化は、この関数は唯一のウェブフックを介して達成することができるようにする必要があります。
まず、我々はgithubのを入力してください - >設定 - >開発 - >パーソナルアクセストークンのページ、ユーザーの読み取りおよび書き込み権限を生成します。
これら二つのCIトークン生成を選択した後、 後者はビューのトークンではありませんので、あなたは、ダウントークンを必要とする、我々は、使用したいし、それ以降。その後、我々は、設定ページの設定ウェブフックを入力し、githubの上で展開プロジェクトを作成する必要があります。
URLセット サーバのIP +ポート+ GitHubの-ウェブフック。三、ジェンキンス准githubの
今すぐ戻っジェンキンスに、とジェンキンスは、最初にすべての私たちはgithubの、パスからgithubの構成情報関連付けます:システム管理] - > [システム設定] - > [githubの - > Githubのサーバーを追加
[追加]ボタンをクリックし、次の情報の資格情報を記入し、秘密は、私たちの世代の個人的なアクセストークンです。 以前のインストールによって、私たちはもう一つのメッセージを設定する必要があるため、我々は、接続障害を見つけることができ、我々はテストの後に追加するには、リンクをクリックして、フォローアップ操作を行うように構成されていない場合、彼らはGitHubのと通信できないため、無効です。 フックURLでカバーされたコンテンツは、私たちはgithubの中にそのアドレスを入力してください。 (あまりにも漠然としたこのコレクション・ソリューションショットを見るために長い時間、この問題があるため)githubの通信後、我々は自由なスタイルのプロジェクトをビルドすることを選択し、ジェンキンスにプロジェクトを作成します。そして、一般的にありますGitHubのプロジェクトに記入。
その後、ソース管理]タブを選択し、特定の情報を記入してください。
この設定情報では、アカウントのパスワードをgithubの資格情報として、分岐選択ブランチを検出することができます。すべての情報を設定した後、我々は、コンフィギュレーション・プロセスを構築するために始めました。トリガーを構築するためのタブを選択し、以下の項目をチェックしてください。
ここで選択ノード環境では、我々はnodejsプラグインジェンキンスを追加する必要があります。記事を参照することができ、特定の構成する方法: ジェンキンスのインストール環境をnodejs最後に、我々は、自動コンフィギュレーションコマンドのジェンキンスを構築します:
このシェル・スクリプト内に、私は理由ドッカーコンテナ停止VUE-ドッカーが第二構成の場合で使用する、コンテナの名前の競合、良い解決策は見出されていないため、元の第一容器が停止して除去するよう新しいコンテナを再作成します。第四に、構築しよう
すべてが設定され、保存してアプリケーションをクリックします。私たちは、その後、コードを変更し、マスターブランチにプッシュし、キューを構築したり、ヒストリーパネルを構築し、ビルドプロセスを見ることができます参照してくださいジェンキンスページを参照してください。
このプロジェクトは、ピットの途中で失敗の記録は常にプロセスを強化して、私の歴史を構築することです。概要
これまでのところ、プログラムは、全体のプロセスを完了したが、この提案はまだのような多くの欠陥がある確かにあるプロセスはNPM内部ドッキングウィンドウの実行にインストールできる場合は、ビルドプロセスようにと。もちろん、展開を自動化されたが、現在はサーバーテンセントアリの雲や雲が、彼らのコンテナサービスを選択することができ、より簡潔かつ友好的な構成がある場合、それらは、例えば、これよりもより成熟したアプローチを持っていると私はこのシナリオを回避することができます新しいコンテナを作成するためには、元のコンテナを削除する必要がある問題を、しかし、その後、私は会社の自動展開で構成され、このような複雑な構成を避けるために、使用テンセントクラウド構成です。
一方、ドッキングウィンドウとジェンキンスを学習する過程で、また、のような大きな牛の記事の数に言及した+ +自動展開プラクティスを構築するためのフロントエンド本当の持続可能な統合開発環境、それが私たちに繰り返しステップを回避することにより、書かれたこれらの以前の記事でありますプロセス・ピット。
いずれかの欠点は、記事にある場合は最後に、あなたは以下の私を修正することができます:)