โชคดีที่มีการประดิษฐ์เครื่องมือ เช่น Ansible การประมวลผลการตั้งค่าและการกำหนดค่าเซิร์ฟเวอร์อัตโนมัติ โดยเฉพาะเครื่องใหม่ มีความคล่องตัวและมีประสิทธิภาพ นอกจากนี้ยังช่วยขจัดโอกาสที่จะเกิดข้อผิดพลาดของมนุษย์เมื่อกำหนดค่าระบบใหม่
ในบทช่วยสอนนี้ เราจะได้เรียนรู้วิธีใช้ Ansible เพื่อทำให้กระบวนการตั้งค่าเซิร์ฟเวอร์ Debian ใหม่และติดตั้ง Docker เป็นไปโดยอัตโนมัติอย่างง่ายดาย
ความต้องการ:
ก่อนดำเนินการต่อ คุณต้องแน่ใจว่าคุณมีสิ่งต่อไปนี้:
- ระบบที่ใช้ Debian เป้าหมาย
- คอนโทรลเลอร์ Ansible พร้อมโฮสต์ไปยังระบบเป้าหมายที่กำหนดค่าไว้แล้ว
- พื้นฐานของการเขียนและการดำเนินการ Playbooks ของ Ansible
- สิทธิ์ที่เพียงพอบนเครื่องเป้าหมาย
หมายเหตุ: บทช่วยสอนนี้ไม่ครอบคลุมพื้นฐานของ 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 aptapt_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 เป็นแบบอัตโนมัติได้อย่างไร