Posts

Showing posts from October, 2018

Docker ใช้งาน Dockerfile เพื่อสร้าง Docker Image ของเราเอง

Image
          Dockerfile คือการสร้าง Docker Image ในแบบของเราเอง หรือก็คือการ custom docker image นั่นแหละ ถึงแม้ว่าเราจะใช้ CLI เข้า container ได้เลย แต่จะดีกว่าไหมถ้าเราทำเป็น Docker Image ที่พร้อมใช้งาน ไม่ต้องมาคอยคิดว่าต้องลงอะไรบ้าง Custom Image ทำไม ?          การสร้าง container จำเป็นต้องใช้ parent image เสมอ ถึงแม้ว่า Docker Hub จะมีให้เราเลือกโหลดมากมาย แต่ตัวไหนล่ะที่ตรงใจเรา ตัวอย่าง Dockerfile          Dockerfile เป็นไฟล์ที่มี syntax เฉพาะ ของ Docker ลักษณะจะปะปนกับ shell script เพื่อเป็นชุดคำสั่งแรกเมื่อมีการสร้าง container นั่นเอง คำสั่งใกล้เคียง $ docker run -p 8080:8080 jenkins การใช้งาน Dockerfile          ขั้นตอนการสร้าง container จากเดิมที่เป็นแค่การดึง image มาใช้ คราวนี้เราจะสามารถเพิ่มเติมคำสั่งบางอย่างเข้าไป สิ่งที่ parent image เตรียมมาก็สามารถใช้ได้ และเพิ่มเติมสิ่งที่เราเพิ่มไปได้อีก มาลอง Custom Docker Image กัน FROM jenkins LABEL maintainer="LordGift" USER root RUN apt-get update && apt-get install -y android-sdk ENV

Docker กับการสร้าง environment แบบ All-in-One (Docker Compose)

Image
         Docker Compose เป็นสิ่งที่จะมายกเครื่อง Docker มากยิ่งขึ้น จากเดิม ( Docker คืออะไร ? ) เราได้ทดลองใช้ Docker ผ่าน CLI กันไป แต่การจะเอา container เดิมมาใช้ ก็จะมีความลำบากเล็กๆ และยิ่งถ้ามี container หลายตัวก็ยิ่งวุ่นวายไปใหญ่ assignment docker-compose.yml          ไฟล์นี้คือหัวใจสำคัญของ docker compose เราจะต้องเขียน config ต่างๆ เข้าไปในรูปแบบ YAML ซึ่งจริงๆมันก็คือการย้ายการเขียน CLI ทีละคำสั่ง ให้อยู่ในรูปแบบไฟล์ที่สามารถอ่านได้ง่ายขึ้น ลดการเขียนคำสั่งไปได้เยอะ (ลด หมายความว่าก็ยังต้องเขียนบ้างนะ sentiment_very_satisfied ) docker-compose.yml คำสั่ง Docker Compose สร้างและ start container ตามไฟล์ docker-compose.yml docker-compose up ดู container ที่เกี่ยวข้อง docker-compose ps Name Command State Ports --------------------------------------------------------------------- my-ci_jenkins_1 /bin/tini -- /usr/local/bi ... Exit 255 my-ci_sonarqube_1 ./bin/run.sh Exit 143        

Docker คืออะไร ? แนะนำวิธีใช้งานเบื้องต้น

Image
          Docker  คือเครื่องมือ virtualization ที่มีความยืดหยุ่นสูง, lightweight และง่ายต่อการใช้งาน เหมาะกับ developer ที่ต้องการสร้าง environment เสมือนจริง ปัจจุบัน Docker ได้รับความนิยมสูงมาก ผู้ให้บริการ Cloud หลายเจ้าก็สามารถนำ Docker ไปใช้ได้ โลโก้ปลาวาฬแบกตู้คอนเทนเนอร์ ก็หมายถึง Docker ที่ขับเคลื่อน environment ต่างๆ ที่แพ็คสำเร็จไว้แล้วนั่นเอง Container          Docker Container หมายถึงเครื่องเสมือน ซึ่งมีความใกล้เคียง Virtual Machine (VM) แบบที่เราคุ้นเคยกันอยู่มาก แต่ docker ถูกออกแบบมาให้จำลอง environment เฉพาะที่เราสนใจเท่านั้น เช่น Application Server, Build Tools, Website,... หรือจะเป็นการรวมกันหลาย ๆ อย่างก็ทำได้ โดย docker นั้นจะใช้ linux เป็นฐานในการสร้าง environment ต่างๆ ดังนั้นเราจำเป็นต้องอาศัย shell script เป็นหลัก Image          Docker Image เป็น template ของ container คือจะประกอบด้วยชุดคำสั่งสำหรับสร้าง environment เริ่มต้น การจะสร้าง container ได้นั้น จำเป็นต้องดึง image มารัน ซึ่งมือใหม่อย่างเราสามารถไปเลือกดึง image จาก image repository มาลองเล่นก่

Facebook Comment

Recent Posts

Popular post of 7 days

Portal คืออะไรกันนะ???

มาตรฐานการตั้งชื่อตัวแปร (Naming Convention)

[Java] ความแตกต่างระหว่าง Overloading กับ Overriding

Popular

[Java] Java 8 DateTime ใหม่ ไฉไลกว่าเดิม

Portal คืออะไรกันนะ???

มาตรฐานการตั้งชื่อตัวแปร (Naming Convention)

[Java] ความแตกต่างระหว่าง Overloading กับ Overriding

เรื่องของ ++i กับ i++

ลืมรหัสปลดล็อค Android เข้าเครื่องไม่ได้ มีทางออกครับ

[Java] Java Static Variable และ Static Method

Push Notification คืออะไร มีวิธีทำอย่างไร (No Code)

พิมพ์ซองจากรายชื่อ excel ด้วยวิธี Mail Merge

[Android] เปิดเครื่องไม่ได้ โลโก้ค้าง (Boot Loop)