1. 程式人生 > >【翻譯】使用Docker Compose一鍵安裝安裝Mesos

【翻譯】使用Docker Compose一鍵安裝安裝Mesos

你絕對應該嘗試一下Docker。它高效和簡單的使用者體驗會令你驚歎。在這篇文章中,我將向你展示如何使用Docker compose構建一個單節點的Mesos。

Docker在2月26日釋出了compose。Compose可以讓你實現多環境下安裝Mesos,並用一個二進位制的docker-compose來管理。Compose的環境配置是定義在一個YAML檔案中的,超級容易閱讀且超級容易編寫。UX與Docker CLI非常相似。

compose釋出後,我嘗試了一下,卻感到有點失望,因為它基本上是Fig的復刻版。這並不意外,因為Docker公司收購了Fig的製造者Orchard公司。但是我仍然期待更多的附加功能,哪怕是高整合的Docker客戶端(一個devbranch的原型),或是一個普通的釋出版,而不是一個獨立的二進位制檔案。我相信這一天一定會到來。

在寫Docker Cookbook的時候,我已經用20種不同的方式部署過Wordpress ,而且開始覺得有點無聊!我那時正在Mesos上查詢更多的相關資料,以及有關Mesos對Docker的支援的內容,我重新閱讀了一篇超棒的部落格,展示瞭如何用7個命令啟動一個Mesos部署(zookeeper,master,slave,marathon框架),驚為天人。

當我重新閱讀這篇部落格,我覺得這是一個經典的Docker-compose用例。只用一個YAML檔案啟動Mesos / Zookeeper / Marathon並嘗試安裝。當然,我不是在談論一個多節點的Mesos安裝產品。我只是在尋找一個簡單的Mesos實驗。

我會免去安裝composer的細節(用crul而已)。Docker 的文件夠棒了。

這裡是描述我們的Mesos的YAML檔案:

zookeeper:
    image: garland/zookeeper
    ports:
        - "2181:2181"
        - "2888:2888"
        - "3888:3888"
    mesosmaster:
        image: garland/mesosphere-docker-mesos-master
        ports:
            - "5050:5050"
        links:
- zookeeper:zk environment: - MESOS_ZK=zk://zk:2181/mesos - MESOS_LOG_DIR=/var/log/mesos - MESOS_QUORUM=1 - MESOS_REGISTRY=in_memory - MESOS_WORK_DIR=/var/lib/mesos marathon: image: garland/mesosphere-docker-marathon links: - zookeeper:zk - mesosmaster:master command: --master zk://zk:2181/mesos --zk zk://zk:2181/marathon ports: - "8080:8080" mesosslave: image: garland/mesosphere-docker-mesos-master:latest ports: - "5051:5051" links: - zookeeper:zk - mesosmaster:master entrypoint: mesos-slave environment: - MESOS_HOSTNAME=192.168.33.10 - MESOS_MASTER=zk://zk:2181/mesos - MESOS_LOG_DIR=/var/log/mesos - MESOS_LOGGING_LEVEL=INFO

用以下命令執行:

$ ./docker-compose up -d

Recreating vagrant_zookeeper_1...

Recreating vagrant_mesosmaster_1...

Recreating vagrant_marathon_1...

Recreating vagrant_mesosslave_1...