การใช้ Ansible เพื่อติดตั้งและกำหนดค่า Docker

Kar Chi Ansible Pheux Tid Tang Laea Kahnd Kha Docker



การทำงานอัตโนมัติของเซิร์ฟเวอร์เป็นทักษะที่ทรงอิทธิพลและมีคุณค่าที่สุดของผู้ดูแลระบบ โดยขจัดความจำเป็นในการทำซ้ำชุดงานที่น่ารำคาญและใช้เวลานานไปยังเครื่องหลายสิบเครื่องระหว่างการกำหนดค่า

โชคดีที่มีการประดิษฐ์เครื่องมือ เช่น Ansible การประมวลผลการตั้งค่าและการกำหนดค่าเซิร์ฟเวอร์อัตโนมัติ โดยเฉพาะเครื่องใหม่ มีความคล่องตัวและมีประสิทธิภาพ นอกจากนี้ยังช่วยขจัดโอกาสที่จะเกิดข้อผิดพลาดของมนุษย์เมื่อกำหนดค่าระบบใหม่

ในบทช่วยสอนนี้ เราจะได้เรียนรู้วิธีใช้ Ansible เพื่อทำให้กระบวนการตั้งค่าเซิร์ฟเวอร์ Debian ใหม่และติดตั้ง Docker เป็นไปโดยอัตโนมัติอย่างง่ายดาย







ความต้องการ:

ก่อนดำเนินการต่อ คุณต้องแน่ใจว่าคุณมีสิ่งต่อไปนี้:



  1. ระบบที่ใช้ Debian เป้าหมาย
  2. คอนโทรลเลอร์ Ansible พร้อมโฮสต์ไปยังระบบเป้าหมายที่กำหนดค่าไว้แล้ว
  3. พื้นฐานของการเขียนและการดำเนินการ Playbooks ของ Ansible
  4. สิทธิ์ที่เพียงพอบนเครื่องเป้าหมาย

หมายเหตุ: บทช่วยสอนนี้ไม่ครอบคลุมพื้นฐานของ Docker หรือ Ansible คุณต้องตรวจสอบให้แน่ใจว่าคุณได้ตั้งค่าเครื่องมือทั้งสองนี้ในเครื่องโฮสต์ของคุณก่อนดำเนินการต่อ



ขั้นตอนที่ 1: เตรียม Playbook

ขั้นตอนแรกคือการสร้างไฟล์เพื่อจัดเก็บคำจำกัดความของ Playbook เพื่อความเป็นสากล เราตั้งชื่อไฟล์ว่า 'playbook.yml' ในไดเร็กทอรีการทำงานปัจจุบัน คุณสามารถเลือกไดเรกทอรีและชื่อไฟล์ที่คุณเห็นว่าเหมาะสมกับโครงการของคุณได้





$ซีดี/โฮม/ฟรี
$ touch playbook.yml

เราเขียนงาน Ansible ทั้งหมดของเราลงในไฟล์ Playbook นี้และดำเนินการเมื่อเสร็จสิ้น Playbook Ansible เป็นหน่วยงานเล็กๆ ที่เราสามารถทำให้เป็นอัตโนมัติได้โดยใช้ Ansible

เมื่อสร้างแล้ว ให้เพิ่มรายการต่อไปนี้ลงในไฟล์ Playbook:



---
- เจ้าภาพ
: : ทั้งหมด
กลายเป็น
: : จริง

การประกาศที่ให้ไว้มีความเป็นสากลมากใน Playbooks ของ Ansible คำสั่งแรกบอก Ansible ว่าโฮสต์ใดที่เราต้องการกำหนดเป้าหมาย สิ่งนี้ควรจะเข้าใจได้ง่ายหากคุณรู้วิธีกำหนดค่าโฮสต์ Ansible

เนื่องจากเรามีโฮสต์เดียวในคลัง Ansible เราจึงกำหนดเป้าหมายโฮสต์ทั้งหมดใน Playbook

บล็อกสุดท้ายบอก Ansible ว่าเราต้องการดำเนินการคำสั่งทั้งหมดที่กำหนดไว้ใน Playbook ในฐานะรูท นี่เป็นสิ่งสำคัญเนื่องจากเราจะติดตั้งแพ็คเกจบนเครื่องเป้าหมาย

ขั้นตอนที่ 2: ติดตั้งแพ็คเกจที่จำเป็น

ขั้นตอนต่อไปคือการบอกให้ Ansible ติดตั้งเครื่องมือที่จำเป็นในการติดตั้งและรัน Docker บนระบบ Debian ในกรณีนี้ เราใช้โมดูล “apt” ที่มาจากเครื่องมือ Ansible Unix คุณสามารถตรวจสอบบทช่วยสอนของเราเกี่ยวกับ Ansible “apt” เพื่อเรียนรู้เพิ่มเติม

เพิ่มรายการต่อไปนี้ลงในไฟล์ Playbook:

- ชื่อ : : ติดตั้งแพ็คเกจที่จำเป็น
ฉลาด
: :
แพคเกจ
: :
- apt-ขนส่ง-https
- ใบรับรอง CA
- ขด
- คุณสมบัติซอฟต์แวร์ทั่วไป
- python3-pip
- python3-setuptools
สถานะ
: : ล่าสุด
อัพเดต_แคช
: : จริง

ในกรณีนี้ เราบอก Ansible ว่าเราต้องการติดตั้ง “apt-transport-https”, “ca-certificates”, “curl”, “software-properties-common”, “python3-pip” และ “python3-setuptools ” บนระบบ

ขั้นตอนที่ 3: ติดตั้งนักเทียบท่า

อย่างที่คุณเดาได้ ขั้นตอนสุดท้ายคือบอก Ansible ให้ติดตั้ง Docker บนระบบโฮสต์ เราเริ่มต้นด้วยการดึงคีย์ Docker GPG เพื่อตรวจสอบการดาวน์โหลด จากนั้นเราจะเพิ่มพื้นที่เก็บข้อมูลอย่างเป็นทางการเป็นแหล่งแพ็คเกจใหม่และใช้เพื่อติดตั้ง Docker

เพิ่มรายการต่อไปนี้เพื่อให้การติดตั้งเสร็จสมบูรณ์:

- ชื่อ : : เพิ่มคีย์ Docker GPG apt
apt_key
: :
URL
: : https://download.docker.com/linux/debian/gpg
สถานะ
: : ปัจจุบัน
- ชื่อ
: : เพิ่มที่เก็บนักเทียบท่า
apt_repository
: :
ซื้อคืน
: : เด๊บ https://download.docker.com/linux/debian   bookworm stable
สถานะ
: : ปัจจุบัน
- ชื่อ
: : อัปเดต APT และติดตั้ง Docker และ Tools
ฉลาด
: :
แพคเกจ
: :
- นักเทียบท่า-ce
- นักเทียบท่า-อะไร-cli
- คอนเทนเนอร์ดีไอโอ
- นักเทียบท่า-buildx-ปลั๊กอิน
- นักเทียบท่าเขียนปลั๊กอิน
สถานะ
: : ล่าสุด
อัพเดต_แคช
: : จริง

สิ่งนี้ควรตั้งค่า Docker Engine และเครื่องมือที่เกี่ยวข้องทั้งหมด

ขั้นตอนที่ 4: ทบทวน Playbook สุดท้าย

สุดท้ายนี้ ดังที่แสดงในภาพต่อไปนี้ คุณควรมี Playbook เพื่อติดตั้งและกำหนดค่า Docker บนระบบ Debian ของคุณ:

---
- ชื่อ
: : ติดตั้งและกำหนดค่านักเทียบท่า
เจ้าภาพ
: : ทั้งหมด
กลายเป็น
: : ใช่
งาน
: :
- ชื่อ
: : ติดตั้งแพ็คเกจที่จำเป็น
ฉลาด
: :
ชื่อ
: :
- apt-ขนส่ง-https
- ใบรับรอง CA
- ขด
- คุณสมบัติซอฟต์แวร์ทั่วไป
- python3-pip
- python3-setuptools
สถานะ
: : ล่าสุด
อัพเดต_แคช
: : จริง

- ชื่อ
: : เพิ่มคีย์ Docker GPG apt
apt_key
: :
URL
: : https://download.docker.com/linux/debian/gpg
สถานะ
: : ปัจจุบัน

- ชื่อ
: : เพิ่มที่เก็บนักเทียบท่า
apt_repository
: :
ซื้อคืน
: : ที่ [ อาร์ค=amd64 ] https://download.docker.com/linux/debian bookworm stable
สถานะ
: : ปัจจุบัน

- ชื่อ
: : อัปเดต APT และติดตั้ง Docker และ Tools
ฉลาด
: :
ชื่อ
: :
- นักเทียบท่า-ce
- นักเทียบท่า-อะไร-cli
- คอนเทนเนอร์ดีไอโอ
- นักเทียบท่า-buildx-ปลั๊กอิน
- นักเทียบท่าเขียนปลั๊กอิน
สถานะ
: : ล่าสุด
อัพเดต_แคช
: : จริง

ขั้นตอนที่ 5: เรียกใช้ Playbook

เมื่อกำหนดค่าการเปลี่ยนแปลงทั้งหมดแล้ว ให้รันคำสั่งต่อไปนี้เพื่อดำเนินการ Playbook ของคุณและตั้งค่างานที่กำหนดไว้ใน Playbook:

$ ansible-playbook playbook.yml

สิ่งนี้ควรรันงานที่กำหนดไว้ทั้งหมดใน playbook และติดตั้ง Docker บนระบบของคุณ

บทสรุป

ในโพสต์นี้ เราได้พูดคุยถึงวิธีที่เราสามารถใช้ Ansible เพื่อทำให้กระบวนการติดตั้งและกำหนดค่า Docker บนระบบที่ใช้ Debian เป็นแบบอัตโนมัติได้อย่างไร