通过ip与端口暴露访问docker容器

通过ip与端口暴露访问docker容器,docker,docker-compose,wildfly,Docker,Docker Compose,Wildfly,我确实有一个DOCKER_主机,由以下人员指定: DOCKER_HOST=tcp://g3-docker-1:2375 由TLS保护。在这台主机上,我可以看到不同配置的“jboss/wildfly”容器以及加载的不同应用程序。出于软件测试目的,可以根据某些人的要求启动它们。使用以下docker compose: version: '2' services: wildfly: build: dockerfile: Dockerfile.wildf

我确实有一个DOCKER_主机,由以下人员指定:

DOCKER_HOST=tcp://g3-docker-1:2375
由TLS保护。在这台主机上,我可以看到不同配置的“jboss/wildfly”容器以及加载的不同应用程序。出于软件测试目的,可以根据某些人的要求启动它们。使用以下docker compose:

version: '2'
services:

    wildfly:
        build:
            dockerfile: Dockerfile.wildfly
            context: .
        ports:
                - "8080:8080"
        depends_on:
            - logvolume
            - mariadb
        volumes_from:
            - logvolume

    mariadb:
        image: mariadb:latest
        ports:
            - "3307:3307"
        environment:
            - MYSQL_ROOT_PASSWORD=secret

    logvolume:
        build: 
          dockerfile: Dockerfile.logvolume
          context: .
        volumes:
            - /opt/jboss/wildfly/standalone/log:/opt/jboss/wildfly/standalone/log
我计划在“wildfly”中构建一个相当大的视图容器,每个容器都有不同的预加载数据和不同的Web应用程序

当我启动这些容器时,每个容器都会在
\u dirname\u default
网络(桥接)中分配一个IP地址。Jboss可以通过外部世界通过$DOCKER_HOST:8080访问,maria_db可以访问,非常好,非常好。。。
但是如果我有两个呢。我是否必须将不同的端口映射到不同的wildfly,或者是否有其他方式通过外部访问停靠的wildfly,例如通过containerid或其他方式?

我现在使用nginx作为反向代理,以便根据与哪个wildfly对话的url来决定

这需要docker-compose.yml中的附加服务,如下所示:

reverseproxy:
    build:
        dockerfile: Dockerfile.nginx
        context: .
    ports:
        - 80:80
    depends_on:
        - wildfly
以及以下nginx.conf:

worker_processes 1;
events { worker_connections 1024; }
http {
    sendfile on;
    upstream docker-wildfly {
        server wildfly:8080;
    }
    server {
        listen 80;
        location /wildfly/ {
            proxy_pass         http://docker-wildfly/;
            proxy_redirect     off;
            proxy_set_header   Host $host;
            proxy_set_header   X-Real-IP $remote_addr;
            proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header   X-Forwarded-Host $server_name;
        }
    }
}

每只野蝇都有自己的位置