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

Dockerコンテナ上のTomcatに外部のブラウザからアクセスする方法

More than 1 year has passed since last update.
  • 環境
    • 外部:Windows10 64bit
      • Dockerコンテナへはリモートデスクトップで接続している
    • Dockerホスト:
      • CentOS Linux release 7.6.1810 (Core)
      • Docker version 18.09.6, build 481bc77156
      • docker-compose version 1.24.0, build 0aa59064
    • Dockerコンテナ
      • CentOS Linux release 7.6.1810 (Core)
      • Tomcat v6.0

やりたいことのイメージ

2019-06-14 17.33.20.jpg

1. docker-compose.ymlにTomcat用のポートを設定する

docker-compose.yml
# 省略
    build:
      context: .
      dockerfile: doubutu/Dockerfile
      args:
        USER: ponsuke
        PORT: 8080
    ports:
      - "8082:8080" # リモートデスクトップ用のポート
      - "{Tomcat用ホストのポート}:{コンテナでのTomcatのポート}"
# 省略

2. コンテナを作る

自分のコンテナだけ作り直す方法

$ docker-compose up -d --build {コンテナ名}
Building {コンテナ名}
Step 1/56 : FROM centos:7.6.1810
 ---> f1cb7c7d58b7
# 省略
Recreating {コンテナ名} ... done

確認する

$ docker ps
CONTAINER ID    IMAGE             COMMAND          CREATED             STATUS              PORTS                                                                              NAMES
{コンテナID}    {イメージ名}      "/usr/sbin/init"  About an hour ago   Up About an hour    0.0.0.0:8082->8080/tcp, 0.0.0.0:{Tomcat用ホストのポート}->{コンテナでのTomcatのポート}/tcp  {コンテナ名}

$ docker port {コンテナID}
8080/tcp -> 0.0.0.0:8082
{コンテナでのTomcatのポート}/tcp -> 0.0.0.0:{Tomcat用ホストのポート}

3. Tomcatを起動して外部のブラウザから接続する

  1. Tomcatを起動する
  2. 外部のブラウザでhttp://{ホストのID}:{Tomcat用ホストのポート}を表示する

参考

ponsuke0531
びっくりするほど物覚えが悪いが、エンジニアを目指しています。
http://ponsuke-tarou.hatenablog.com/
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