タスクを作成します。
ログインJenkins
の左側のリストをクリックしてください新建
オプション。タスク名を入力し、選択し构建一个自由风格的软件项目
、クリックしてください确定
。
コンフィギュレーション
では任务配置
インターフェース、あなたが設定できるオプション、設定をして。General标签
丢弃旧的构建
保持构建的天数
保持构建的最大个数
クリックして源码管理
選択し、タブgit
で、Repository URL
入力リンクのGitリポジトリ。
HTTPリンクする場合は、選択しCredentials
た行のAdd > Jenkins
中で、Kind
ラインドロップダウン選択Username with password
、下記Username
およびPassword
ユーザー名とパスワードボックスを入力します。
ドッカーは、SSHキーを使用してコンテナ内ジェンキンス。
サーバーを直接使用するssh key
ことに。あなたは指定した場合Path to key
、使用する必要性。場合あなたが使用する必要があるコンテナをするので、相対パスがローカルパス、これに硬化していないパス。docker
ssh key
Source files
docker
key
Source files
docker
場合はSSH
、リンク、選択SSH Username with private key
でUsername
、ユーザー名]ボックスに入るPrivate Key
よう選択Enter directly
の表示key
プライベートキーボックス。(秘密鍵が生成されssh-keygen -t rsa -C "email.com"
、中に結果のファイルhome
ディレクトリ.ssh
ディレクトリでは、コマンドを使用するcat id_rsa
にコピーされた秘密鍵、表示するkey
ボックス)。以下の下をクリックしてAdd
設定を保存するボタンをクリックします。
でCredentials
、ドロップダウンメニュー作成した選択しますUsername
。
定期的なタスクを使用します
で构建触发器
タグ選択Poll SCM
、入力H/2 * * * *
、そして最後にクリックしてください保存
。
タスクの実装に更新場合、これは、時限タスク、クエリ・コードごとに2分です。
ウェブフックを使用してください
定期的なタスクを使用するよりも、場合にのみ、指定された操作またはプッシュ、ジェンキンスするコードを引っ張るアクセスのないタイミング、リソースを大量に消費するウェブフックより良いウェブフック。
あなたがプラグインをインストールする必要があるGitlab Hook、GitLab、Gitlab Authentication、Build Authorization Token Root
設定をjob
して、构建触发器
チェックBuild when a change is pushed to GitLab. GitLab CI Service URL: http://服务器IP:8080/project/demo
、URL
コールバックアドレスに続いて、クリックし高级
て、[ Secret token
OK]をクリックしGenerate
、生成token
。
でGitLab
項目を対応するサーバSettings
内のIntegrations
、設定webhook
、中ジェンキンスで入力取得をURL
、そしてtoken
、必要に応じてチェックイベント、オープンSSLとして、クリックAdd webhook
。ウィルAdd webhook
次のボタンを生成しwebhook
、クリックしtest
、イベントのポップアップチェック、イベントを選択し、トップにポップアップ表示されHook executed successfully: HTTP 200
、これは、webhook
設定は完了です。
注:スクリプトの使用docker exec
実行コンテナコマンドは指定されていない場合-it
、-t
指定されたtty
、とjenkins
いいえtty
、あなただけ指定する必要があり-i
ます。
図1は、リモートサーバにコードを展開します
SSHキーコンテナを使用しません。
主に発生ジェンキンスサーバssh-keygen -t rsa -C "email.com"
、
使用ssh-copy-id -i ~/.ssh/id_rsa.pub user@ip
(22ポートでない場合、パラメータが追加されてもよい-p port
変更するport
ポート値)を、ターゲットサーバに格納されて生成された公開鍵。この無料のログインパスワード。
インストールPublish over SSH
プラグインを系统管理
- > 系统设置
内部見つけますPublish over SSH
。
コンフィギュレーションJenkins SSH Key
キーパスワードが生成に設定されている場合は、ちょうどPassphrase
なしそれは無視され、パスワードを入力します。
プライベートコピー、ペーストにKey
内部。
設定SSH Servers
をクリックします增加
。Name
SSHの名前は、Hostname
リモートサーバーのIPアドレスは、Username
ログインユーザ名、Remote Directory
リモートサーバー上のディレクトリは、実数でなければなりません、プラグインが自動的に作成されていません。
クリックしてTest Configuration
、テスト構成が成功しました。成功が表示されますSuccess
。
1.1リモート展開タスク
そして、建物のタスクの実行時にタスクがトリガーされ、ビルドタスクを作成します。
またはをクリックし新建
、タスクの名前を入力し、クリックしない构建一个自由风格的软件项目
コピーボックスの下部にあるタスク名をトリガー、先ほど作成を入力してください。
クリックします确定
。タスク名を入力した場合は、エラーが存在し、もう一度再入力することができません。
で构建触发器
選択Build after other projects are built
、他の構築するプロジェクトが完了した後に行うProjects to watch
最初のタスクは、エラーの可能性があります選択しNo such project ‘gol’. Did you mean ‘golismero’?
、それは単一のタスクであれば、それは問題ではありません、あなたが最終的な表面に置くことができ,
、それは削除しないで、文句はありませんカンマや削除された領域をもインパクト。
次のことを確認しTrigger only if build is stable
、建物が安定しているときにのみトリガ。
その他の設定、构建后操作
で增加构建后操作步骤
ポップアップオプションが選択されSend build artifacts SSH
、入力SSH Server Name
(リモートホストIP)、その後に入力されたスクリプトコマンド、他のオプションは、一時的に記入する必要はありません。Transfers
Exec command
Source files
基準としworkspace
た場合、プロジェクトディレクトリの下のディレクトリ、それは相対的なディレクトリは、あるworkspace
ディレクトリが、jenkins
作業ディレクトリ、あなたが記入する必要がある**/
作業ディレクトリのフォルダ内のファイルまたはファイルを続けることができ、。
Remove prefix
ディレクトリのファイルのコピーをフィルタリングします。
Remote directory
ファイルは、リモートマシン上のディレクトリに、このディレクトリはに相対し得る存在していないが自動的に作成された場合、。SSH Server
Remote directory
保存し、あなたがトリガータスクを表示し、タスクを構築することができます。
展開することができる別の方法があります
2 SSHプラグインの展開
この方法では、インストールする必要があるSSH
プラグインを。
クリックCredentials
- > System
- > Add domain
、Domain Name
、名前を入力しますDescription
説明、書き込みに時間から書き込みをSpecification
デフォルトのままAdd
、クリックしてくださいok
。新しいページでは、左上のをクリックしAdd Credentials
、リモートログインを入力Username
してPassword
をクリックOK
。
クリック系统管理
- > 系统设置
を見つけるためにSSH remote hosts
、設定SSH site
をクリックし增加
、入力しHostname
たホストIP、Port
リモートポートを(通常は22)、Credentials
ちょうど選択を作成Domain
し、Username
同じクリックCheck connection
、表示Successfull connection
、成功した、クリックしてください保存
。
2.1リモート展開タスク
そして、基本的には1.1
同じですが、これはある构建
に增加构建步骤
ポップアップオプションが選択されExecute shell script on remote host using ssh
、デフォルトが自動的に記入しますSSH site
(に充填されていない場合は、前の可能性誤りが存在しない場合かどうかを確認するために入力ボックスをクリックして)、赤誤りがあるかもしれないSSH Site not specified
、ではありません管理。ではCommand
、入力ボックスのshell
スクリプト。保存
それはすることができます。
最初にこのように構成されていない否や。
メールの設定
あなたは、インストールすることができEmail Extension Plugin
、プラグイン、拡張機能、メールボックス機能を。
左側をクリック系统管理
して、管理Jenkins
列クリックし系统设置
、新しいページを見つけ、Jenkins Location
中に系统管理员邮件地址
送信者の列の書式を入力し标题<email.com>
、[検索邮件通知
とクリック高级
追加するボタンをSMTP服务器
、だけでなく、電子メールのサフィックス(@xxx.com
)、使用してSMTP
認証されたユーザー名は、完全な電子メールアカウントですパスワードは認証コードです。(テンセントマイクロバインド設定で文字場合はEメール-レターマイクロバインディング- 。クライアント固有のパスワード、認証コードは、設定を保存)を使用してチェックしSSL
、プロトコル、SMTP
ポートを465
、Reply-To Address
受信者のアドレスを入力してください。
プレミアムメール通知
あなたはインストールする必要がありEmail Extension
、プラグイン、インストールをクリック系统管理
- > 系统设置
を見つけるためにExtended E-mail Notification
、構成するSMTP server
サーバーを、フォーマットsmtp.exmail.qq.com
(ここでは例として、テンセントEメールで)。
Default user E-mail suffix
メールサフィックスを設定し、@文字があるの背後にあります@xxx.com
。
Default Content Type
送信されるデフォルトのコンテンツタイプを選択しますHTML/(text/html)
。
Default Recipients
既定の受信者は、中間体と、複数の受信者に提供することができる,
仕切り、英語の状態の象徴。
Default Subject
デフォルトのテーマを変更しないでください、あなたはまた、例えば、上部にいくつかのテキストを追加することができます构建通知
。
Default Content
デフォルトのテンプレートは、テンプレートは、インターネットの変更に見つけることができ、また、あなた自身、htmlのタイプを記述することができ、があります。
上記をクリックし高级
、ボタンをチェックしUse SMTP Authentication
、タイプUsername
とPassword
、Password
あることをクライアント認証とパスワードを配置邮件
確認し、同じ認証コードでSSL
クリックし、保存
。
シングルとしてJob
増加し构建后步骤
、
選択Editable Email Notification
で、Project Recipient List
受信者のメールボックス内の受信者の入力リスト、あなたが複数使用できる,
部門を、グローバルなデフォルト設定を使用するかは、使用することができます$DEFAULT_RECIPIENTS
。
Project Reply-To List
人々のリストには、デフォルト値を返すことが許さ$DEFAULT_REPLYTO
。
Content Type
ドキュメントタイプを設定することができますHTML
。
Attach Build Log
送信されたメッセージは、ログが含まれています。
クリックAdvanced Settings
で、Triggers
削除し、Sent To
デフォルトをDeveloper List
クリックし、Add
追加Recipient List
完了するために、保存し、。