Shipyard 2.0 เป็น Image หนึ่งของ Docker ที่เขียนขึ้นมาเพื่อให้ใช้งาน Docker ได้ง่ายผ่านทาง Web Interface มาเริ่มเล่นกันเลย…
ทำการแก้ไขไฟล์ /etc/default/docker.io โดยการเพิ่ม
DOCKER_OPTS=" --dns 8.8.8.8 --dns 8.8.4.4 -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock"
เพื่อทำให้เข้าใช้งาน Docker ได้ผ่านทาง Web Socket และ Unix Socket ด้วยคำสั่ง
sudo gedit /etc/default/docker.io
เมื่อทำการแก้ไขแล้วให้บันทึกแล้วสั่งให้ Docker หยุดทำงานและเริ่มต้นการทำงานใหม้เพื่อให้ Docker นำค่าที่เปลี่ยนแปลงไปใช้ด้วยคำสั่ง
sudo service docker.io stop
sudo service docker.io start
หรือทำการ Restart ด้วยคำสั่ง
sudo service docker.io restart
ติดตั้ง Shipyard 2.0 โดยที่ Shipyard 2.0 นั้นจำเป็นต้องติดตั้ง RethinkDB, API, Shipyard 2.0 Cli และ Interlock
เริ่มติดตั้งและสั่งให้ RethinkDB ทำงานด้วยคำสั่ง
sudo docker run -d -P --name rethinkdb shipyard/rethinkdb
ทำการติดตั้ง API ด้วยคำสั่ง
sudo docker run -d -p 8080:8080 --link rethinkdb:rethinkdb shipyard/shipyard
เมื่อติดตั้งทั้งสองตัวเสร็จแล้วให้ไปตรวจสอบ IP Address ของ Docker ด้วยคำสั่ง
ifconfig docker0
เข้าใช้งานผ่านเว็บเบราเซอร์เข้าไปที่
http://Docker0_IP:8080
เช่น
http://172.17.42.1:8080
จะมีหน้าจอให้ใส่ Username และ Password โดยค่าพื้นฐานที่ Shipyard 2.0 กำหนดมาคือ
- Username : admin
- Password : shipyard
ทำการเพิ่ม Docker Host ที่โดยไปที่ Engines จากนั้นกด ADD
ใส่ค่าต่างๆดังนี้
- Name : ชื่อของ Docker Host ที่ต้องการ
- Lables : แถบแสดงผลที่ต้องการ
- CPUs : จำนวน Cpu ที่ต้องการให้ Docker Host นี้สามารถใช้งานได้
- Memory : จำนวนหน่วยความจำ RAM ที่ต้องการให้ Docker Host นี้สามารถใช้งานได้
- Address : หมายเลข IP Address ที่จะใช้เรียก Docker Host :2375 เพื่อระบุ Port การเชื่อมต่อที่สามารถใช้งานผ่านหน้าเว็บไซต์ได้
เมื่อใส่ค่าเสร็จแล้วให้กดปุ่ม ADD ด้านล่าง
กลับมาที่ Terminal อีกครั้งเพื่อทำการติดตั้งและใช้งาน Shipyard 2.0 Cli ด้วยคำสั่ง
sudo docker run --rm -it shipyard/shipyard-cli
เข้าใช้ Shipyard 2.0 ด้วยคำสั่ง
shipyard login
ใส่ URL Username Password เหมือนกับที่ใช้งานผ่านเว็บเบราเซอร์
ทำการสร้าง Service Key ด้วยคำสั่ง
shipyard add-service-key -d "test key"
ทำกากจดบันทึก Service Key ไว้ในโปรแกรมที่ถนัดเพื่อนำไปใช้ในขั้นตอนถัดไป
ออกจาก Shipyard 2.0 Cli ด้วยคำสั่ง exit
ติดตั้ง Interlock ด้วยคำสั่ง
docker run -it -p 80:8080 -d ehazlett/interlock -shipyard-url http://Docker_IP:8080:8080 -shipyard-service-key Service_Key
โดยเปลี่ยนค่าดังนี้
- Docker_IP : หมายเลข IP Address ของ Docker
- Service_Key : ชุดตัวอัหษรของ Service Key ที่ได้ทำการสร้างและบันทึกไว้
ตัวอย่างเช่น
sudo docker run -it -p 80:8080 -d ehazlett/interlock -shipyard-url http:// 172.17.42.1:8080:8080 -shipyard-service-key 8o4e.KwZaGuOM3viivJenGni08vpwx1bFzKm
ลองเพิ่ม Container ผ่าน Shipyard 2.0 ใน How-To นี้จะทดลองด้วยการสร้าง Container ที่มีการทำงานของ Apache
มาที่เว็บเบราเซอร์เลือกที่ Containers จะมีรายการ Containers ที่มีการทำงานของ Shipyard 2.0 ปรากฏอยู่ กดปุ่ม Deploy เพื่อสร้าง Container ใหม่
ใส่ค่าต่างดังนี้
- Image : ชื่อ Image และ เวอรชันที่ต้องการสามารถหาได้ที่ https://registry.hub.docker.com
- Hostname : ชื่อ Hostname ที่ต้องการสร้าง Container
- Domain : ชื่อโดเมนเนม
- Container Name : ชื่อของ Container
- CPUs : จำนวนของหน่วยประมวลผล
- Memory (MB) : จำนวนของหน่วยความจำ (RAM)
- Count : จำนวนของ Container ที่ต้องการสร้าง
- Port : หมายเลข Port ที่ต้องการใช้ในการเชื่อมต่อและเข้าถึงการใช้งาน
- Type : ประเภทของ Container
- Network : การทำงานของ Network
ใส่ค่าแล้วกดปุ่ม DEPLOY
เมื่อกระบวนการ Deploy เสร็จสิ้นจะปรากฏ Container ที่ได้สร้างขึ้นในรายการ
แก้ไขไฟล์ /etc/hosts เพื่อจำลองการชี้ตำแหน่งโดเมนเนมด้วยคำสั่ง
sudo gedit /etc/hosts
แก้ไขไฟล์โดยทำการเพิ่มหมายเลข IP Address ให้กับ โดเมนเนมที่กำหนดให้ Container แล้วทำการบันทึก
กลับมาที่เว็บเบราเซอร์ไปที่โดนเมนเนมที่ได้สร้างขึ้นก็จะพบกับหน้าจอแสดงการทำงานของ Apache