| [[Docker]] |
==Jenkins==
{{amazon|B07JGWKRZQ}}
===Install([[Docker]])===
----
====ブリッジネットワークの作成====
*https://www.jenkins.io/doc/book/installing/docker/
*https://www.typea.info/blog/index.php/2021/05/24/ubunt_docker_tensorflow_other_host_bridge/
<pre>
$ docker network create jenkins
</pre>
<pre>
$ docker network create --driver bridge --subnet=192.168.0.0/24 --gateway=192.168.0.23 --opt "com.docker.network.bridge.name"="br0" jenkins
fcdef22003bdc75011a53a8a0e71ec8a992f17b15ce671b8064753548541f53e
</pre>
====Jenkins内部からDockerを利用可能にする====
----
$ docker run \
--name jenkins-docker \
--rm \
--detach \
--privileged \
--network jenkins \
--network-alias docker \
--ip 192.168.0.15 \
--env DOCKER_TLS_CERTDIR=/certs \
--volume jenkins-docker-certs:/certs/client \
--storage-driver overlay2
</pre>
<pre>$ docker run \ --name jenkins-docker \ --rm \ --detach \ --privileged \ --network jenkins \ --network-alias docker \ --env DOCKER_TLS_CERTDIR=/certs \ --volume jenkins-docker-certs:/certs/client \ --volume `$HOME`/Workspaces/jenkins_home:/var/jenkins_home \ --publish 2376:2376 \ docker:dind \ --storage-driver overlay2</pre>
*確認
<pre>
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f15315bf5752 docker:dind "dockerd-entrypoint.…" 6 minutes ago Up 6 minutes 2375/tcp, 0.0.0.0:2376->2376/tcp, :::2376->2376/tcp jenkins-docker
</pre>
*確認2
<pre>
$ docker volume ls
DRIVER VOLUME NAME
local 58132856bc0429402f20086a302ff73aa1dc6d06dbc8363cac0d24431d3b11c1
local jenkins-data
local jenkins-docker-certs
</pre>
*確認3
<pre>
$ docker volume inspect jenkins-data
[
{
"CreatedAt": "2021-05-28T20:52:44+09:00",
"Driver": "local",
"Labels": null,
"Mountpoint": "/var/lib/docker/volumes/jenkins-data/_data",
"Name": "jenkins-data",
"Options": null,
"Scope": "local"
}
]
</pre>
--publish 8080:8080 \
--publish 50000:50000 \
--volume jenkins-data:/var/jenkins_home \
--volume jenkins-docker-certs:/certs/client:ro \
myjenkins-blueocean:1.1
</pre>
<pre>
$ docker run \
--name jenkins-blueocean \
--rm \
--detach \
--network jenkins \
--ip 192.168.0.16 \
--env DOCKER_HOST=tcp://docker:2376 \
--env DOCKER_CERT_PATH=/certs/client \
--env DOCKER_TLS_VERIFY=1 \
--volume jenkins-data:/var/jenkins_home \
--volume jenkins-docker-certs:/certs/client:ro \
f15315bf5752 docker:dind "dockerd-entrypoint.…" 6 hours ago Up 6 hours 2375/tcp, 0.0.0.0:2376->2376/tcp, :::2376->2376/tcp jenkins-docker
</pre>
<pre>
$ nmcli con show
NAME UUID TYPE DEVICE
ctc-a-d17c80 46a14c17-83f7-4d08-bf9d-c9e1aeba3b81 wifi wlp2s0
br0 cd44f828-91d2-44a9-a0ad-5043d4c73f1d bridge br0
docker0 6c866865-d7ba-4c3c-836a-548630f40c71 bridge docker0
mpqemubr0 3ccae181-8936-4a15-bee2-7a1e07f3db36 bridge mpqemubr0
bridge-slave-enp1s0f1 21562732-1f1c-49b4-a7ba-e6469d46f49b ethernet enp1s0f1
ctc-g-d17c80 21fe84f8-fefd-4f25-a922-e098b6d49e3d wifi --
netplan-enp1s0f1 fb8733d5-5b9d-3c3c-ad52-c077a300b661 ethernet --
</pre>
====[[Docker]]コンテナに接続====
<pre>
</pre>
===Jenkins Setup===----*アクセスすると、ログにアクセスパスワードが出力される[[File:jenkins_password.png|500px]]<pre>$ docker logs jenkins-blueocean</pre>[[File:jenkins_log_password.png|500px]] ====推奨プラグインの一括インストール====Jenkins homeディレクトリへのアクセス [[File:jenkins_setup_install_sugest_plugin.png|500px]] ====準備完了==== [[File:jenkins_ready.png|500px]] =====Web画面からの再起動=====<pre>http://192.168.0.16:8080/safeRestart</pre> ====日本語化====*docker run で、Jenkinsのホーム・ディレクトリ(日本語化は、ブラウザの言語に依存。Edge(Chrome)の例[[File:jenkins_japanese.png|500px]] ==JOBの作成=====新規フリースタイルプロジェクトのビルド===[[File:jenkins_job01.png|600px]] ===ソースコード管理[[Git]]===[[File:jenkins_job02.png|600px]] [https:/var/jenkins_home)をマッピングした場合、ローカルマシンからアクセスできるdeveloper.aiming-inc.com/infra/jenkins-github-webhook-collaboration/ JenkinsとGitHubのWebhook連携の整理] [[File:jenkins_job03.png|600px]]