2016-09-14 25 views
22

üzerinden docker konteynerlerine statik IP sağlayın Kaplara statik IP adresi sağlamaya çalışıyorum. Özel bir ağ oluşturmam gerektiğini anlıyorum. Bunu yapıyorum ve köprü arayüzü ana makinede kaldı (Ubuntu 16.x). Kaplar bu alt ağdan IP alır, ancak sağladığım statik değil.Docker-compose

version: '2' 

services: 
    mysql: 
    container_name: mysql 
    image: mysql:latest 
    restart: always 
    environment: 
     - MYSQL_ROOT_PASSWORD=root 
    ports: 
    - "3306:3306" 
    networks: 
    - vpcbr 

    apigw-tomcat: 
    container_name: apigw-tomcat 
    build: tomcat/. 
    ports: 
    - "8080:8080" 
    - "8009:8009" 
    networks: 
    - vpcbr 
    depends_on: 
    - mysql 

networks: 
    vpcbr: 
    driver: bridge 
    ipam: 
    config: 
     - subnet: 10.5.0.0/16 
     gateway: 10.5.0.1 
     aux_addresses: 
      mysql: 10.5.0.5 
      apigw-tomcat: 10.5.0.6 

konteyner 10.5.0.2 ve 10.5.0.3, 5 yerine ve sabit önermiyoruz 6.

cevap

40

Not alın: Burada

benim liman işçisi-compose.yml olduğunu Docker'daki kaplar için IP dışardan konteyner ağınızın iç kısmına (örn. Macvlan) yönlendirmeye izin veren bir şey yapmadığınız sürece. DNS, konteyner ağının içinde hizmet keşfi için zaten var ve kapsayıcı ölçeklemeyi destekliyor. Kapsayıcı ağının dışında, ana bilgisayardaki açıktaki bağlantı noktalarını kullanmalısınız. Bu sorumluluk reddi beyanı ile, burada istediğiniz kompozisyon dosyasını oluşturun:

version: '2' 

services: 
    mysql: 
    container_name: mysql 
    image: mysql:latest 
    restart: always 
    environment: 
     - MYSQL_ROOT_PASSWORD=root 
    ports: 
    - "3306:3306" 
    networks: 
     vpcbr: 
     ipv4_address: 10.5.0.5 

    apigw-tomcat: 
    container_name: apigw-tomcat 
    build: tomcat/. 
    ports: 
    - "8080:8080" 
    - "8009:8009" 
    networks: 
     vpcbr: 
     ipv4_address: 10.5.0.6 
    depends_on: 
    - mysql 

networks: 
    vpcbr: 
    driver: bridge 
    ipam: 
    config: 
     - subnet: 10.5.0.0/16 
     gateway: 10.5.0.1 
+1

Bir çekicilik gibi çalışır! Teşekkürler. – chenchuk

+1

Benim için çalışmıyor: Kullanıcı belirtilen IP adresi, yalnızca kullanıcı tarafından yapılandırılmış alt ağlara sahip ağlara bağlanırken desteklenir –

+0

Oluşturulan alt ağın tanımlandığı, oluşturma dosyasının alt yarısını atlamış olmanız gerekir. – BMitch