ครั้งที่แล้วพาเล่น HA MQTT Broker ด้วย Docker Compose ครั้งนี้มาแนะนำวิธีการ Reconfig HAProxy ในกรณีที่มีการ Scale In, Scale Out จากการใช้ Docker Compose Scale ขอเปลี่ยนตัวอย่างเป็น WebApp จะได้เข้าใจง่ายๆ WebApp ตัวนี้ expose port 8080 เราสามารถใช้ Interlock ช่วยในการ reconfig HAProxy ในกรณีที่มีการ Scale ไม่ว่าจะ Scale in หรือ Scale out ได้ ครั้งนี้เราจะใช้ Docker Machine, Docke Swarm, Docker Compose และ Interlock

มาลงมือติดตั้ง Docker กันก่อน

wget -qO- https://get.docker.com/ | sh

ตามด้วย Docker Compose

curl -L https://github.com/docker/compose/releases/download/1.3.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose

chmod +x /usr/local/bin/docker-compose


Continue reading

ครั้งที่แล้วได้ทดลองใช้งาน Docker Swarm ไปบ้างแล้ว ครั้งนี้มาลองดูวิธีการใช้แบบอื่นๆ บ้าง หากคุณยังไม่ได้ติดตั้ง Swarm และผูก Docker Cluster ไว้ให้ตามอ่านเนื้อหาในครั้งก่อน เมื่อผูก cluster เรียบร้อยแล้ว มีทางเลือกในการใช้งานกับ cluster 2 แบบ คือ

  • ใช้งานผ่าน swarm โดยใช้ docker แบบปกติ
  • ใช้งานผ่าน swarm โดยใช้ docker-compose

การใช้งาน 2 วิธีนี้สามารถใช้งานร่วมกันได้ หากคุณใช้ docker แบบปกติสั่ง run container คุณสามารถกำหนด constraint หรือ affinity ร่วมด้วยได้ เช่น ต้องการใช้ compose ช่วยในการ deploy web หรือ scale web ก็สามารถทำได้


Continue reading

ครั้งที่แล้วได้แนะนำการใช้งาน Docker Machine ไปหลายครั้งบน Public Cloud หลายค่าย เช่น Azure, Rackspace, DigitalOcean เป็นต้น แนะนำการผูก Docker Cluster โดนใช้ Docker Swarm และใช้งาน Service Orchestration โดยใช้ Docker Composer กันไปแล้ว ครั้งนี้จะมาแนะนำการใช้งานร่วมกันทั้ง 3 Service

เริ่มจากสร้าง Cluster และ Swarm Master บน DigitalOcean

docker run swarm create


Continue reading

ครั้งที่แล้วพาเล่น Docker Machine ทั่งบน Digital Ocean, Azure และ Rackspace ครั้งนี้จะมาแนะนำ Docker Swarm ตัว Docker Swarm ทำหน้าที่คล้ายกับ etcd ใน CoreOS เพื่อใช้ในการผูก Cluster โดยใช้ Service เป็นหลัก ซึ่ง Docker Hub จะให้บริการ service discovery ให้ ซึ่งผู้ใช้สามารถเรียกใช้ Swarm ได้ผ่าน Docker Image หรือใช้งานร่วมกับ Docker Machine ได้เช่นเดียวกัน 8ครั้งนี้เราจะใช้ Machine กับ Digital Ocean ติดตั้งเครื่องมือที่ต้องใช้กันก่อน

ติดตั้ง Docker Machine ดังนี้

wget https://github.com/docker/machine/releases/download/v0.1.0/docker-machine_linux-amd64 -O /usr/local/bin/docker-machine

จากนั้นขอ UUID ของ Cluster ดังนี้

docker run swarm create


Continue reading