2017-03-24 62 views
1

我按照這篇文章(https://blogs.msdn.microsoft.com/jcorioland/2016/04/25/create-a-docker-swarm-cluster-using-azure-container-service/#comment-1015)設置swarm docker主機羣集。有一個主人和兩個代理人。本文的優點是使用「-H 172.16.0.5:2375」,它在「代理人」而不是「主人」之間創建新容器。如何在Azure容器服務中運行docker-compose並將其部署到代理而不是主服務器?

我的問題是:如果我想讓docker-compose.yml工作,我該怎麼做?我試過的命令是這樣的:

docker-compose -H 172.16.0.5:2375 up 

但它不起作用。如果我只是使用:

docker-compose up 

然後容器將在主控主機上創建,我甚至不能使用公共DNS訪問該網站。

下面是我用1個Magento的& 1 MariaDB的容器YML文件:

version: '2' 
services: 
    mariadb: 
    image: 'bitnami/mariadb:latest' 
    environment: 
     - ALLOW_EMPTY_PASSWORD=yes 
    ports: 
     - '3306:3306' 
    volumes: 
     - 'mariadb_data:/bitnami/mariadb' 
    magento: 
    image: 'bitnami/magento:latest' 
    environment: 
     - MAGENTO_HOST=172.16.0.5 
     - MARIADB_HOST=172.16.0.5  
    ports: 
     - '80:80' 
    volumes: 
     - 'magento_data:/bitnami/magento' 
     - 'apache_data:/bitnami/apache' 
     - 'php_data:/bitnami/php' 
    depends_on: 
     - mariadb 
volumes: 
    mariadb_data: 
    driver: local 
    magento_data: 
    driver: local 
    apache_data: 
    driver: local 
    php_data: 
    driver: local 

而這部分是基於這樣的文章我的猜測,

environment: 
     - MAGENTO_HOST=172.16.0.5 
     - MARIADB_HOST=172.16.0.5 

但陽明不像附加的端口,例如

environment: 
     - MAGENTO_HOST=172.16.0.5:2375 
     - MARIADB_HOST=172.16.0.5:2375 

非常感謝!

回答

-1

您需要在/etc/default/docker設置中配置遠程或使用指向主機的DOCKER_HOST環境變量。

另外,搬運工撰寫支持-H關鍵

+0

嗨夥計,你可以請貼我的DOCKER_HOST腳本?我很困惑。例如我仍然需要MAGENTO_HOST和端口2375等。再次感謝! – Samuel

+1

只需在您啓動的機器上創建環境變量docker compose('export DOCKER_HOST = remote:port')並運行docker-compose,不需要更改docker撰寫文件中的任何內容 – 4c74356b41

+0

我正在使用Azure Container服務,所以我認爲我應該在主linux機器上運行你的「export DOCKER_HOST = remote:port」。那麼如何運行docker-compose和-H key呢? – Samuel

相關問題