経緯
cronで起動するシェルを実行したい時とかって、CloudWatch⇒AWS Lambdaって構成もいいんですが、もう少しこねくりまわしたい時や、処理後のインテグレーションがより簡単な方が良いなぁ、と考えるとJenkinsが使いたくなったりする時があると思います。
Lightsailに元々あると良いのですがなかったので自分で入れたときのメモです。
セットアップ手順
インスタンス作成へ
Lightsailからインスタンスの作成をクリック。
オプションの選択
インスタンスイメージの選択 内の 設計図の選択 で OSのみ をクリックし Ubuntu を選択。
ロケーションやインスタンスプラン・インスタンス名を確認のうえ、最下部の作成をクリック。
パブリックIPの確認/ポートの開放
Jenkinsは8080を使うので開けておきます。
と同時にパブリックIPも確認しておきます。
インストールが完了したらhttp://【パブリックIP】:8080/ でアクセスします。
SSHを使用して接続
タイムゾーンをAsia/Tokyoに変更
Jenkinsでタイマー処理などをする際はJSTの方が見易いので変更します。
$ sudo timedatectl set-timezone Asia/Tokyo
Java8をインストール
$ sudo add-apt-repository ppa:webupd8team/java $ sudo apt-get update $ sudo apt-get install oracle-java8-installer
Jenkinsをインストール
$ wget -q -O - https://pkg.jenkins.io/debian-stable/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-get update $ sudo apt-get install jenkins
Jenkins自動起動設定
$ sudo apt-get install sysv-rc-conf $ sudo sysv-rc-conf jenkins on
Jenkinsの設定
http://【パブリックIP】:8080/ でアクセスすると画面が出てきます。
なお、何かの間違いでログインできなくなったら
$ sudo vi /var/lib/jenkins/config.xml
で<useSecurity>false</useSecurity>に編集して
$ sudo service jenkins restart
で再始動すると半ログイン状態になるので、ユーザーを作成しておきます。
参考
Ubuntu 16.04 LTS : システムのタイムゾーンを設定する : Server World
[Jenkins][Ubuntu] UbuntuにJenkinsをインストール - Qiita