วิธีการติดตั้ง Docker บน Ubuntu 20.04 LTS

คู่มือที่ครอบคลุมสำหรับการติดตั้งและตั้งค่า Docker Community Edition บน Ubuntu 20.04 LTS Systems

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

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

Docker มีอยู่สองเวอร์ชันที่แตกต่างกัน Docker Community Edition (Docker-CE) เป็นเวอร์ชันฟรีของ Docker และ Docker Enterprise Edition (Docker-EE) สำหรับการใช้งานในองค์กรและธุรกิจ

ในบทความนี้ เราจะมาดูวิธีการติดตั้ง Docker-CE บน Ubuntu 20.04 LTS โดยใช้ที่เก็บอย่างเป็นทางการของ Docker และ Ubuntu 20.04

ติดตั้ง Docker โดยใช้ Docker Repository อย่างเป็นทางการ

แพ็คเกจ Docker ที่มีในที่เก็บ Ubuntu 20.04 อาจไม่ใช่แพ็คเกจล่าสุดที่ Docker จัดเตรียมให้ นอกจากนี้ หากคุณประสบปัญหาใดๆ กับกระบวนการติดตั้งหรือข้อบกพร่องใดๆ ที่ชุมชน Docker อาจไม่สามารถช่วยเหลือคุณได้

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

ถอนการติดตั้งเวอร์ชันเก่า

แพ็คเกจ Docker เก่าเรียกว่า นักเทียบท่า, docker.io หรือ นักเทียบท่า. เราจำเป็นต้องตรวจสอบให้แน่ใจว่าไม่มีสิ่งใดติดตั้งอยู่บนระบบก่อนที่จะติดตั้ง Docker จากที่เก็บ Docker อย่างเป็นทางการ เปิดเทอร์มินัลโดยกด Ctrl+Alt+T จากนั้นรันคำสั่งต่อไปนี้:

sudo apt ลบ docker docker.io containerd runc docker-engine

เรียกใช้คำสั่งข้างต้น แม้ว่าคุณจะเพิ่งติดตั้งใหม่ ไม่เป็นไรถ้า apt แจ้งว่าไม่มีแพ็คเกจใดติดตั้งอยู่ หรือหากไม่รู้จักแพ็คเกจใดๆ

เพิ่มที่เก็บ Docker อย่างเป็นทางการ

ก่อนที่เราจะสามารถใช้ ฉลาด ในการติดตั้ง Docker เราต้องตั้งค่าที่เก็บ Docker เราจะเริ่มกระบวนการโดยอัปเดตดัชนีแพ็คเกจและติดตั้งการพึ่งพาที่จำเป็นเพื่อเพิ่มที่เก็บ HTTPS

อัปเดต sudo apt sudo apt ติดตั้ง apt-transport-https ca-certificates curl gnupg-agent software-properties-common

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

curl -fsSL //download.docker.com/linux/ubuntu/gpg | sudo apt-key เพิ่ม -

ถัดไปเพิ่มที่เก็บ Docker ให้กับระบบ Ubuntu 20.04 ของคุณ:

sudo add-apt-repository "deb [arch=amd64] //download.docker.com/linux/ubuntu $(lsb_release -cs) เสถียร"

คำสั่ง $(lsb_release –cs) ส่งคืนชื่อรหัสของการติดตั้ง Ubuntu ของคุณ ซึ่งก็คือ 'โฟกัส' สำหรับ Ubuntu 20.04 หากต้องการเพิ่มพื้นที่เก็บข้อมูลทุกคืนหรือทดสอบ Docker คุณสามารถแทนที่คำว่า มั่นคง กับ ทุกคืน หรือกับ ทดสอบ ในคำสั่งข้างต้น

แต่ขอแนะนำให้ใช้รุ่นที่เสถียรเนื่องจากได้รับการทดสอบแล้วและมีแนวโน้มที่จะเกิดข้อผิดพลาดและความล้มเหลวน้อยกว่า

ติดตั้ง Docker

แพ็คเกจ Docker อย่างเป็นทางการเรียกว่า as นักเทียบท่า-ce และมีอยู่ในที่เก็บ Docker เท่านั้น อัปเดตฐานข้อมูลที่เก็บและติดตั้งเวอร์ชันล่าสุดของ Docker CE และคอนเทนเนอร์โดยเรียกใช้:

อัปเดต sudo apt sudo apt ติดตั้ง docker-ce docker-ce-cli containerd.io

สามารถติดตั้ง Docker เวอร์ชันเฉพาะได้หากต้องการ หากต้องการแสดงรายการเวอร์ชันนักเทียบท่าทั้งหมดที่มีให้เรียกใช้คำสั่งต่อไปนี้:

apt-cache madison docker-ce

จากนั้นติดตั้งเวอร์ชันเฉพาะโดยใช้สตริงในคอลัมน์ที่สอง (สตริงในกล่องสีแดง) และเรียกใช้คำสั่งต่อไปนี้

sudo apt ติดตั้ง docker-ce= docker-ce-cli= containerd.io

ตัวอย่างเช่น แทนที่ กับ 5:19.03.10~3-0~ubuntu-focal ในคำสั่งและรันเพื่อติดตั้งเวอร์ชัน 19.03.10 Docker

sudo apt ติดตั้ง docker-ce=5:19.03.10~3-0~ubuntu-focal docker-ce-cli=5:19.03.10~3-0~ubuntu-focal containerd.io

ติดตั้ง Docker โดยใช้ Ubuntu 20.04 Repository

หากคุณไม่ต้องการทำตามขั้นตอนในการเพิ่มที่เก็บใหม่ และคุณไม่เป็นไรที่จะอัปเดตหนึ่งหรือสองหลัง คุณสามารถใช้ที่เก็บ Ubuntu 20.04

คล้ายกับวิธีก่อนหน้านี้ เราต้องแน่ใจว่าเราไม่มีแพ็คเกจ Docker ที่เก่ากว่า จากนั้นเราสามารถอัปเดตที่เก็บ Ubuntu 20.04 และติดตั้ง Docker ได้ทันที

หากต้องการลบแพ็คเกจ Docker เก่าที่ไม่จำเป็น ให้รันคำสั่งต่อไปนี้:

sudo apt ลบ docker docker.io containerd runc docker-engine

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

แพ็คเกจ Docker ในที่เก็บ Ubuntu 20.04 มีชื่อว่า docker.ioในการติดตั้ง Docker ให้รันคำสั่งต่อไปนี้:

sudo apt ติดตั้ง docker.io

ดิ ฉลาด ตัวจัดการแพ็คเกจจะแก้ไขและติดตั้งการพึ่งพาที่ Docker ต้องการโดยอัตโนมัติ

หลังการติดตั้ง Tweaks

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

เรียกใช้บริการ Docker ด้วย Ubuntu 20.04 Startup

หากคุณต้องการเริ่ม Docker daemon โดยอัตโนมัติด้วยระบบ Ubuntu 20.04 ให้รันคำสั่งต่อไปนี้:

sudo systemctl เปิดใช้งานนักเทียบท่า

ทุกครั้งที่คุณบูตเครื่อง Ubuntu 20.04 Docker จะพร้อมใช้งานและพร้อมที่จะดึงอิมเมจและเริ่มคอนเทนเนอร์

เรียกใช้ Docker โดยไม่ใช้คำสั่ง Sudo

ตามค่าเริ่มต้น เฉพาะรูทเท่านั้น sudo ผู้ใช้และกลุ่มนักเทียบท่าสามารถดำเนินการคำสั่งนักเทียบท่า

ดังนั้นการรันคำสั่ง Docker โดยไม่ต้อง sudo คุณต้องเป็นรูทหรือผู้ใช้ในกลุ่มนักเทียบท่าซึ่งสร้างขึ้นระหว่างการติดตั้ง Docker ในการเพิ่มผู้ใช้ของคุณในกลุ่มนักเทียบท่า ให้เรียกใช้:

sudo usermod -aG นักเทียบท่า $USER

ดิ $USER เป็นตัวแปรสภาพแวดล้อมที่แสดงชื่อผู้ใช้ของคุณในคำสั่งด้านบน ออกจากระบบและเข้าสู่ระบบกลับเพื่อให้สมาชิกกลุ่มของคุณได้รับการรีเฟรช ตอนนี้คุณสามารถเรียกใช้คำสั่งนักเทียบท่าโดยไม่ต้อง sudo.

ตรวจสอบการติดตั้ง Docker

เมื่อการติดตั้งเสร็จสิ้น Docker daemon จะเริ่มทำงานโดยอัตโนมัติในเบื้องหลัง ในการตรวจสอบสถานะของ Docker ให้รันคำสั่งต่อไปนี้:

sudo systemctl สถานะนักเทียบท่า

ดิ สถานะ systemclt คำสั่งควรแสดงผลดังที่แสดงด้านล่าง

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

คอนเทนเนอร์นักเทียบท่าเรียกใช้สวัสดีโลก

รูปภาพ 'hello-world' ใช้เพื่อทดสอบการติดตั้ง Docker โดยควรแสดงข้อความต่อไปนี้:

ath@PC:~$ docker container เรียกใช้ hello-world ไม่พบอิมเมจ 'hello-world:latest' ล่าสุดในเครื่อง: ดึงจากไลบรารี่/hello-world 0e03bdcc26d7: ดึงข้อมูลให้สมบูรณ์ ไดเจสต์ที่ดาวน์โหลด: sha256:6a65f928fb91fcfbc963f7aa6d57c8eeb426ad559a20c447eefed สถานะใหม่: world:ล่าสุด สวัสดีจาก Docker! ข้อความนี้แสดงว่าการติดตั้งของคุณทำงานได้อย่างถูกต้อง ในการสร้างข้อความนี้ Docker ได้ทำตามขั้นตอนต่อไปนี้: 1. ไคลเอ็นต์ Docker ติดต่อกับ Docker daemon 2. Docker daemon ดึงอิมเมจ "hello-world" จาก Docker Hub (amd64) 3. Docker daemon สร้างคอนเทนเนอร์ใหม่จากอิมเมจนั้นซึ่งรันไฟล์ปฏิบัติการที่สร้างเอาต์พุตที่คุณกำลังอ่านอยู่ 4. Docker daemon สตรีมเอาต์พุตนั้นไปยังไคลเอ็นต์ Docker ซึ่งส่งไปยังเทอร์มินัลของคุณ หากต้องการลองสิ่งที่ทะเยอทะยานมากขึ้น คุณสามารถเรียกใช้คอนเทนเนอร์ Ubuntu ด้วย: $ docker run -it ubuntu bash แชร์รูปภาพ ทำให้เวิร์กโฟลว์เป็นอัตโนมัติ และอื่นๆ ด้วย Docker ID ฟรี: //hub.docker.com/ สำหรับตัวอย่างและแนวคิดเพิ่มเติม โปรดไปที่ : //docs.docker.com/get-started/ 

เราได้แสดงวิธีการติดตั้ง Docker โดยใช้ทั้งที่เก็บ Ubuntu และ Docker และเรายังได้เห็นการปรับปรุงคุณภาพชีวิตบางอย่างเพื่อให้การใช้งาน Docker ง่ายขึ้น

หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับ Docker โปรดดูเอกสารประกอบของ Docker อย่างเป็นทางการ