Help us understand the problem. What is going on with this article?

Vagrant環境のDockerでJenkinsサーバを構築し、スレーブのWindowsマシンを接続する(前半)

More than 1 year has passed since last update.

イントロ

以前自分のWikiに「Dockerサーバに、Jenkinsサーバを構築する」って記事を書いたのですが、そのときはdocker run ... って多少チマチマと構築してましたが、今回は同じ環境を docker-compose で作成します。
そして、Jenkinsサーバを構築したのち、スレーブとなるWindowsPCをそのJenkinsにぶらさげて、JenkinsからそのWindowsマシンに何か処理をさせてみようとおもいます。
00.png

あ、一応 UiPathをリモート実行出来るかな??ってのを調査するための環境構築という位置づけです。1
ちなみに UiPath社は「スケジューラなどからの定期起動はライセンスポリシー違反」としていますので、実運用へ適用する際はライセンス的に問題ないかキチンとご確認ください。

UiPath社がだしている UiPath Robots の外部トリガーによる実行についてによると「直接のユーザ操作によらない起動はNG」と書いてありますが「スケジューラを用いた直接ユーザ操作による起動はサポート外だが実施してよい」 みたいなので、Jenkinsからの実行自体は問題がなさそうですね。

作成する環境

  • 1つのVagrantfileで Jenkinsサーバを立ち上げます。
  • Vagrantfileでは、Ubuntu Linux 上にDockerサーバを構築し、Docker上にJenkinsサーバを立ち上げます。
  • リアルのネットワークに「スレーブにしたいWindowsPC」が存在していて、それをJenkinsにスレーブとして設定します。

図にすると、こんな感じです。
Vagrant_Docker_jenkins.png

ちなみに今回作業する環境は下記の通り。

Vagrantを動かすコンピュータ
$ sw_vers
ProductName:    Mac OS X
ProductVersion: 10.14.6
BuildVersion:   18G84
$
$ vagrant --version
Vagrant 2.0.4
$
スレーブにしたいWindowsPC
Microsoft Windows [Version 10.0.17763.615]
(c) 2018 Microsoft Corporation. All rights reserved.

C:\>ver

Microsoft Windows [Version 10.0.17763.615]

C:\>java -version
java version "1.8.0_221"
Java(TM) SE Runtime Environment (build 1.8.0_221-b11)
Java HotSpot(TM) Client VM (build 25.221-b11, mixed mode)

UiPathのバージョンは、2018.4.5 でした。

コードの取得、Jenkinsサーバの構築

使用するファイル群をGitHubから取得します。

$ git clone --branch feature/for_qiita_jenkins https://github.com/masatomix/environment_template.git
$ cd environment_template/
$ vagrant up

と実行することで、Ubuntu Linuxの構築から Dockerのインストール、Dockerサーバ上でのJenkinsサーバのインストールまでが行われます。
環境が構築できたら、http://localhost:8888/jenkins/2へアクセスしてください。何か画面が出てきたらOKです。
01.png

初回アクセス時に Administrator password を入れろと出ますが、vagrant ssh でJenkinsが稼働するLinuxサーバにログインし、

$ vagrant ssh
vagrant@ubuntu-xenial:~$ cat /vagrant/jenkins/jenkins_home/secrets/initialAdminPassword
744a5ab5c95f4b438ecd2ac7cb74b960

で表示される値を入れればOKです。

Continueをクリックすると、初回に入れたいプラグインを指定する画面となりますが、とりあえず左を選択します。
02.png

インストールが始まりました。
02_1.png

完了したら、アカウント作成画面が表示されるので、、、適当に入力。
03.png

URLもデフォルトでよいでしょう。「Save and Finish」をクリックして、、
04.png

完了です。
05.png

トップページが表示されました!
06.png

docker-compose.yml はこちら

vagrant up が実行されると、Ubuntu Linux上のDockerで、下記の docker-compose.yml が実行されてJenkinsが構築されます。

docker-compose.yml
version: '3.5'
services:
  jenkins-master:
    image: jenkins/jenkins:${VERSION}
    environment:
      - JENKINS_OPTS= --prefix=/jenkins
    ports:
      - 8080:8080
      - 50000:50000
    volumes:
      - ./jenkins_home:/var/jenkins_home
    restart: always

.env
VERSION=2.187-centos

Jenkinsを立ち上げるだけなので、シンプルですね。Jenkinsの構築は完了です。

さて次の記事で、スレーブにしたいWindowsPC を設定していきましょう。

おつかれさまでした。

関連リンク


  1. 結論いうとリモートから実行は出来るんですが、さすがにOrchestratorを使った方がラクです :-) 

  2. vagrantを立ち上げた端末以外からアクセスする場合はhttp://[vagrantが動いているマシンのIP]:8888/jenkins/ です。ねんのため。 

masatomix
JavaEEの開発やリッチクライアント開発のアーキテクトが専門でしたが、最近はRPAとAIがメイン。。。RPAはUiPathとOrchestratorの構築が中心です。 FirebaseとかOAuth/OIDCなど新しいモノ、あと数学もすき。 最近は UiPath Friends っていうユーザコミュニティにも関わってます。 あ、UiPath Japan MVP 2019,2020 す。
primebrains
プライム・ブレインズは、マネジメントスキルだけでなく、最新のITスキルを兼ね備えた技術者がお客様の立場でお客様と共に、成功に向けてプロジェクトを推進します。
http://www.primebrains.co.jp/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away