docker-compose下管理的docker是如何相互通讯的

docker-compose下的docker之间通讯不能直接使用ip的方式通讯,因为ip会因为server端的变化而变化.所以一般都是用compose file中的container_name来进行通讯.

下面是docker-compose的composefile;

version: '2'
services:
     androidlink: 
        build: 
             context: ./java-env/build-docker-image/
             dockerfile: java8-env.dk  
        image: java8env
        restart: always
        depends_on:
                - mqtt
                - db
        volumes:
                - ./java-env/run-docker-image/run.sh:/root/adv/run.sh
                - ./java-env/run-docker-image/server.conf:/root/adv/server.conf
                - ./java-env/run-docker-image/m2mserver.jar:/root/adv/m2mserver.jar
                - ./java-env/run-docker-image/models:/root/adv/models
                - ./java-env/run-docker-image/vnctoken:/root/adv/vnctoken 
                - ./java-env/run-docker-image/logs:/root/logs
                - ./java-env/run-docker-image/conf:/root/adv/conf
        ports: 
                - "8080:8080"
        command: /root/adv/run.sh
        container_name: m2mserver
        links:
                - "mqtt"
                - "db"
        networks: 
                - advnet
     mqtt:
        build: 
             context: ./mosquitto/
             dockerfile: Dockerfile
        image: m2m-mosquitto
        restart: always
        volumes:
                - ./mosquitto/mosquitto.conf:/mosquitto/config/mosquitto.conf
        ports: 
                - "1883:1883"
                - "11880:11880"
        container_name: m2m_mosquitto
        networks: 
              - advnet
     db:
        image: postgres:9.4
        restart: always
        environment:
                POSTGRES_PASSWORD: postgres
                POSTGRES_DB: aimlink
        ports:
                - "5432:5432"
        container_name: m2m-postgresSQL
        networks: 
              - advnet
networks:
    advnet:

下面为java的postgresql的配置文件


"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">

   
        false
        org.postgresql.Driver
        postgres
        after_transaction
        jdbc:postgresql://m2m-postgresSQL:5432/aimlink
        postgres
        org.hibernate.dialect.PostgreSQLDialect
        30
        50
        update
        false
        false
       
       
       
       
   

下面时mqtt的配置

MQTT_SERVER = m2m_mosquitto
MQTT_PORT = 1883
 

你可能感兴趣的:(docker)