/ / Docker jenkinsアクセスポート-docker、jenkins、docker-compose、port

ドッカージェンキンスアクセスポート - ドッカー、ジェンキン、ドッカー作成、ポート

コマンドによってジェンキンス画像のdocker composeを実行しています docker-compose up 私の設定ファイル Dockerfile:

FROM java:openjdk-8-jre

EXPOSE 50000

docker-compose.yml

    version: "3"

services:
jenkins:
image: jenkins:2.60.3-alpine
ports:
- 50000:50000

私のコンテナーはdocker psの結果を実行します:

CONTAINER ID        IMAGE                   COMMAND                  CREATED             STATUS              PORTS                                NAMES
7dbe18cdbb53        jenkins:2.60.3-alpine   "/bin/tini -- /usr/l…"   22 minutes ago      Up 22 minutes       8080/tcp, 0.0.0.0:50000->50000/tcp   docker_jenkins_1

でドッカーホストを確認しました docker inspect 7dbe18cdbb53 結果:

],
"NetworkID": "e3a5461960939397615620f051696f8b78fde9352d0c8b42b4ed679a1e847b9b",
"EndpointID": "999b5d3525b2fe823c5ed0033bb27e85b3ca26356b4bd9f1525de005739fecde",
"Gateway": "172.18.0.1",
"IPAddress": "172.18.0.2",
"IPPrefixLen": 16,
"IPv6Gateway": "",
"GlobalIPv6Address": "",
"GlobalIPv6PrefixLen": 0,
"MacAddress": "02:42:ac:12:00:02",
"DriverOpts": null

`

172.18.0.2:50000のようなブラウザからアクセスしようとすると、動作しません。

回答:

回答№1は0

jenkins 所有しているイメージは、ポートでHTTPトラフィックをリッスンするように構成されています 8080。 これを見てみましょう: https://github.com/jenkinsci/docker/blob/c2d6f2122fa03c437e139a317b7fe5b9547fe49e/Dockerfile

これは、httpポートのデフォルト値が定義されている部分です

ARG http_port = 8080

そして、これはそれが公開されている場所です

#メインWebインターフェースの場合:

$ {http_port}を公開

同様に、(スレーブ)エージェントポートは 50000.

あなたの docker ps 出力では、jenkinsコンテナがリッスンしていることがわかります 8080 しかし、これはホストで公開されていません。 したがって、基本的にはhttp経由でエージェントポートに接続しようとしており、期待どおりに機能していません。 Docker作成ファイルを変更して、 8080 移植して使用します。