LoginSignup
10
12

More than 5 years have passed since last update.

CentOS上にDockerでJenkinsサーバを構築する

Last updated at Posted at 2017-09-19

DockerもJenkinsも初めての超初心者です。
今回は、Windowsホスト上のVagrant CentOS環境への構築してみます。

準備

Vagrantの下準備

Vagrant環境じゃない人は読み飛ばしてください。

容量の追加

Vagrantゲストのディスク空き容量が少なかったので、予め追加しておきました。
↓参考にしました
http://qiita.com/koitaro/items/c8bf8eb1e67e78890a5c

Jenkins接続用のポートフォワード設定

VagrantホストのブラウザからJenkinsにアクセスできるよう、Vagrantfileに下記1行を追加しておきます

Vagrantfile
config.vm.network "forwarded_port", guest: 8080, host: 8080

Dockerのインストール

リポジトリを入れて起動設定まで

bash
sudo rpm --import http://dl.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-6
sudo yum -y install http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
sudo yum -y install docker-io
sudo service docker start
sudo chkconfig docker on

Dockerイメージの作成

Dockerfileを作る

bash
vi Dockerfile
Dockerfile
FROM jenkinsci/jenkins:lts

# install via apt
USER root

# install jenkins plugins
COPY plugins.txt /usr/share/jenkins/plugins.txt
RUN /usr/local/bin/plugins.sh /usr/share/jenkins/plugins.txt

# drop back to the regular jenkins user - good practice
USER jenkins

ここでプラグインの設定ができるらしいけど、よくわからないのでとりあえず空のファイルを作ってビルド

bash
touch plugins.txt
sudo docker build -t jenkins .

ワークスペースを永続的にするため、-vでディスクマウントして起動
(ディレクトリはchownしておかないとtouch: cannot touch ‘/var/jenkins_home/copy_reference_file.log’Permission deniedと怒られてしまう)

bash
sudo mkdir /var/jenkins_home
sudo chown -R 1000 /var/jenkins_home
sudo docker run -p 8080:8080 -p 50000:50000 -v /var/jenkins_home:/var/jenkins_home -d jenkins

Jenkinsへアクセス

パスワード入力

ブラウザでIPアドレス:8080へアクセス
「Unlock Jenkins」の画面でパスワードを聞かれるので、マウントしたディレクトリから参照して入力

bash
cat /var/jenkins_home/secrets/initialAdminPassword

プラグインインストール(初期)

やっぱりよくわからないので「Install suggesed plugins」を選んでオススメを入れておく

管理者登録

こんな画面が出るので適当に登録
image.png

無事、Jenkinsの管理画面が表示されました
image.png

プラグインインストール

今度こそ必要なプラグインを入れましょう。
画面から「Jenkinsの管理」→「プラグインの管理」→「利用可能」を選択して、必要なプラグインをインストールします。
image.png

これで構築は完了!
これから、Jenkinsの使い方のお勉強。。

10
12
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
10
12