Docker ถูกประยุกต์ใช้งานในหลายรูปแบบไม่เพียงแต่เป็น Service Container เท่านั้น แต่ยังถูกใช้เป็น Container สำหรับ Command Line ด้วย ยกตัวอย่างเช่น tutum-cli ที่รวมเอาคำสั่งที่ต้องใช้ใน tutum รวมเอาไว้ใน container เพื่อความสะดวกในการใช้งาน เวลาใช้งานก็สร้าง alias ของคำสั่ง เชื่อมกับ docker run อีกทีซึ่งดูแล้วอาจจะดูแปลกๆ แต่ก็สามารถทำได้ และใช้งานได้ดีเลยทีเดียว
ครั้งนี้เราจะมาลองสร้าง Container CLI กันดูบ้าง แต่ให้ดูเท่ต้องเป็น CLI ที่เข้าใช้งานได้จากหน้าเว็บและเรียกใช้คำสั่งที่เราต้องการได้ด้วย เราจะใช้ image ตั้งต้นของ CenturyLink ชื่อ wetty-cli มาสร้าง image กัน เริ่มจากสร้าง Dockerfile กันก่อนดังนี้
FROM centurylink/wetty-cli:0.0.8
# Install CLIs
RUN apt-get update && apt-get install -y python-software-properties
RUN apt-get update && apt-get install -y python-keystoneclient && apt-get install -y python-swiftclient && apt-get install -y python-novaclient && apt-get install -y python-troveclient && apt-get install -y python-glanceclient && apt-get install -y python-cinderclient && apt-get install -y python-heatclient && apt-get install -y python-ceilometerclient && apt-get install -y python-neutronclient
view rawgistfile1.txt hosted with ❤ by GitHub
จากนั้นสั่ง build ดังนี้
docker build -t openstack-cli
รอจน build เสร็จ จากนั้นก็สั่ง run ได้เลย กำหนดค่า config OpenStack ของคุณให้ถูกต้อง
docker run --rm --name openstack -p 8000:3000 \
-e "OS_AUTH_URL=xxxxxx" -e "OS_REGION_NAME=xxxxxx" \
-e "OS_TENANT_NAME=xxxxxx" -e "OS_USERNAME=xxxxxx" \
-e "OS_PASSWORD=xxxxxx" openstack-cli
เปิด browser เข้าไปที่ http://localhost:8000 ตัว wetty จะเปิด terminal พร้อมรอรับคำสั่ง
เท่านี้คุณก็สร้าง Container CLI ได้ง่ายๆ แล้ว