ラベル Jenkins の投稿を表示しています。 すべての投稿を表示
ラベル Jenkins の投稿を表示しています。 すべての投稿を表示

2020年11月20日金曜日

Ubuntu Server 20.04/Tomcat9でJenkinsインストール

Ubuntu Server 20.04 および Tomcat9 も動作し、GitBucket もインストールが完了したので、次のサーブレットとして Jenkins をインストールしようと思います。

Jenkins は Wikipedia の記載では、

Jenkins(ジェンキンス)はフリーでオープンソースの自動化サーバー

です。

イメージとしては、GitBucket に対してコミットしたファイル群から、様々な自動化処理を行ってくれるためのフレームワークといった所です。

Jenkinsのホームページから war ファイルがダウンロード可能で、同ファイルをデプロイすることで使用が可能です。

Jenkinsのインストール手順が書かれたページによると、

Jenkins can also be run as a servlet in different Java servlet containers such as Apache Tomcat or GlassFish. However, instructions for setting up these types of installations are beyond the scope of this chapter.

とのことで、一瞬、「ん?」と思えますが、手順は簡単なため、以下に手順として記載しておきます。

Jenkinsのサイトから war ファイルをダウンロード

これはそのまんまです。Jenkinsのダウンロードサイトからwarファイルをダウンロードします。なお Jenkins も LTS と最新の2種類が存在していますが、今回は LTS を使用することとします。現時点での最新版は Jenkins 2.249.3 LTS  みたいです。

なおどれが war ファイルのダウンロードなのか、少し分かりにくいです。ぱっと見た時、Ubuntu/Debian と書かれた所に目がいってしまいますが、左側の表の一番上の、少しごちゃごちゃと記載されているのが war ファイルとなります。なお左側がLTSを示しています。


tomcatサービスの停止

デプロイを安全に行うために一度tomcatを停止します。稼働させたままデプロイできるやもしれませんが、心配なので一旦停止します。

$ sudo systemctl stop tomcat9

tomcatのwebappにコピー

tomcatが停止したことを確認した後、tomcatのwebappフォルダにダウンロードしたwarファイルをコピーします。停止の確認は以下で可能です。ステータスが inactive であれば大丈夫です。

$ sudo systemctl status tomcat9

なおwebappフォルダは以下です。システム構成によっては違うかもしれませんが。

/var/lib/tomcat9/webapps

tomcatサービスの起動

warファイルをコピー後、tomcatを再稼働させます。これはstopと逆の操作です。

$ sudo systemctl start tomcat9

jenkinsへ1stアクセス

これで Jenkins のインストールが開始されます。無事に動作したかどうかは tomcat の manager 画面から確認出来ると思います。URLとしては、

http://localhost:8080/manager/html

とかになるかと思います(localhostの場合)。

ここでエラーなく Jenkins が稼働(Running が true)しているのを確認したら Jenkins のページにアクセスします。

http://localhost:8080/jenkins

ですね。

そうすると以下のUnlock画面が表示されます。


このページの意味は書かれている内容の通りですが、画面上に表示されている指定のファイルからパスワード文字列をコピーして入力欄に貼り付けて Continue です。

その後、無事に動作し、プラグインのインストール画面が表示されます。


水色で示されている Install suggested plugins をクリックします。


このように提案された各種プラグインのインストールが開始されます。

無事にインストールが終わるとFirst Admin User の登録画面が表示されます。


これで Save and Continue として進めると無事にJenkinsが開始されます。

webアプリケーションによるとは思いますが、いつもながら Jenkins のデプロイは楽ですね。開発者またユーザの皆様に感謝です。

実務側ではソフトウェアリポジトリへコミットされたソース群を Nightly で検証することをさせていますが、家のサーバですし、少し便利な使い方を考えてみたいと思います。

もしかしたら「それ、cronで出来るやん」という使い方だけで終わるかもしれませんが。。。

GNU Emacs for Windows における最近の IMEパッチ問題

自分は GNU Emacs 使いなのですが、Windows版の Emacs を使用する場合、IMEパッチの問題がありました。 ざっくり言うと、FSFの正規のリリースバイナリだと日本語変換のIMEに切り替えた時、インラインで候補文字が表示されないという問題です。そのために有志の方々...