ວິທີການຕິດຕັ້ງແລະໃຊ້ Docker ໃນ Ubuntu 20.04


Docker ແມ່ນເວທີເປີດທີ່ນິຍົມທີ່ສຸດ ສຳ ລັບນັກພັດທະນາແລະຜູ້ບໍລິຫານລະບົບເພື່ອສ້າງ, ແລ່ນແລະແບ່ງປັນແອັບພລິເຄຊັນກັບຕູ້ຄອນເທນເນີ. ການບັນຈຸ (ການ ນຳ ໃຊ້ພາຊະນະບັນຈຸການ ນຳ ໃຊ້ຕ່າງໆ) ກຳ ລັງໄດ້ຮັບຄວາມນິຍົມຫລາຍເພາະວ່າພາຊະນະບັນຈຸມີຄວາມຍືດຫຍຸ່ນ, ມີນ້ ຳ ໜັກ ເບົາ, ແບບພົກພາ, ແບບວ່າງພ້ອມກັນ, ສາມາດປັບຂະ ໜາດ ໄດ້ແລະປອດໄພກວ່າ

ບົດຂຽນນີ້ເປັນຈຸດເລີ່ມຕົ້ນທີ່ດີ ສຳ ລັບຜູ້ເລີ່ມຮຽນຮູ້ການຕິດຕັ້ງແລະ ນຳ ໃຊ້ Docker ໃນລະບົບ Linux 20.04 Linux ພ້ອມດ້ວຍບາງ ຄຳ ສັ່ງພື້ນຖານ. ສຳ ລັບ ຄຳ ແນະ ນຳ ນີ້, ພວກເຮົາຈະຕິດຕັ້ງ Docker Community Edition (CE).

  • ການຕິດຕັ້ງ Ubuntu 20.04 server.
  • ຜູ້ໃຊ້ທີ່ມີສິດທິພິເສດໃນການ ດຳ ເນີນການ ຄຳ ສັ່ງ sudo.

ຕິດຕັ້ງ Docker ໃນ Ubuntu 20.04

ເພື່ອໃຊ້ Docker ລຸ້ນລ້າສຸດ, ພວກເຮົາຈະຕິດຕັ້ງມັນຈາກຫໍສະຫມຸດ Docker. ສະນັ້ນ, ເລີ່ມຕົ້ນໂດຍການເພີ່ມລະຫັດ GPG ສຳ ລັບທີ່ຢູ່ Docker repository ຢ່າງເປັນທາງການໃນລະບົບຂອງທ່ານ, ຫຼັງຈາກນັ້ນຕື່ມການຕັ້ງຄ່າຫໍໄຕໃຫ້ກັບແຫຼ່ງ APT ດ້ວຍ ຄຳ ສັ່ງຕໍ່ໄປນີ້.

$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
$ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu focal stable"

ຕອນນີ້ອັບເດດ cache cache package ໃຫ້ກັບ APT ເພື່ອລວມເອົາ Docker ຊຸດ ໃໝ່ ເຂົ້າໃນລະບົບໂດຍໃຊ້ ຄຳ ສັ່ງຕໍ່ໄປນີ້.

$ sudo apt update

ຕໍ່ໄປ, ຕິດຕັ້ງ Docker package ດັ່ງທີ່ສະແດງໄວ້.

$ sudo apt install docker-ce

ໃນລະຫວ່າງຂັ້ນຕອນການຕິດຕັ້ງແພັກເກດ Docker, ຜູ້ຕິດຕັ້ງແພັກເກດເຮັດໃຫ້ systemd (ລະບົບແລະຜູ້ຈັດການບໍລິການ) ເລີ່ມຕົ້ນແລະເປີດໃຊ້ບໍລິການ docker ໂດຍອັດຕະໂນມັດ. ການໃຊ້ ຄຳ ສັ່ງຕໍ່ໄປນີ້ເພື່ອຢືນຢັນວ່າການບໍລິການ docker ແມ່ນໃຊ້ງານແລະຖືກເປີດໃຫ້ໃຊ້ງານໂດຍອັດຕະໂນມັດເມື່ອເລີ່ມຕົ້ນລະບົບ. ນອກຈາກນີ້, ກວດເບິ່ງສະຖານະພາບຂອງມັນ:

$ sudo systemctl is-active docker
$ sudo systemctl is-enabled docker
$ sudo systemctl status docker

ມີ ຄຳ ສັ່ງລະບົບ systemctl ອີກ ຈຳ ນວນ ໜຶ່ງ ໃນການຄຸ້ມຄອງແລະຄວບຄຸມບໍລິການ docker ເຊິ່ງປະກອບມີດັ່ງຕໍ່ໄປນີ້:

$ sudo systemctl stop docker			#stop the docker service
$ sudo systemctl start docker			#start the docker service
$ sudo systemctl  restart docker		#restart the docker service

ເພື່ອກວດສອບລຸ້ນ Docker CE ທີ່ຕິດຕັ້ງຢູ່ໃນລະບົບຂອງທ່ານ, ໃຫ້ ດຳ ເນີນການ ຄຳ ສັ່ງຕໍ່ໄປນີ້:

$ docker version

ທ່ານສາມາດເບິ່ງ ຄຳ ສັ່ງການ ນຳ ໃຊ້ docker ທີ່ມີຢູ່ໂດຍການແລ່ນ ຄຳ ສັ່ງ docker ໂດຍບໍ່ມີຕົວເລືອກຫຼືການໂຕ້ຖຽງ:

 
$ docker

ຈັດການ Docker ເປັນຜູ້ໃຊ້ທີ່ບໍ່ມີຮາກດ້ວຍ ຄຳ ສັ່ງ sudo

ໂດຍໃນຕອນຕົ້ນ, daemon Docker ຜູກກັບເຕົ້າຮັບ UNIX (ແທນທີ່ຈະເປັນພອດ TCP) ເຊິ່ງເປັນເຈົ້າຂອງໂດຍຜູ້ໃຊ້ຮາກ. ເພາະສະນັ້ນ daemon Docker ສະເຫມີເຮັດວຽກເປັນຜູ້ໃຊ້ຮາກແລະເພື່ອ ດຳ ເນີນການ ຄຳ ສັ່ງ docker, ທ່ານ ຈຳ ເປັນຕ້ອງໃຊ້ sudo.

ນອກຈາກນັ້ນ, ໃນລະຫວ່າງການຕິດຕັ້ງ Docker package, ກຸ່ມທີ່ມີຊື່ວ່າ docker ຖືກສ້າງຂື້ນ. ເມື່ອ Docker daemon ເລີ່ມຕົ້ນ, ມັນສ້າງເຕົ້າຮັບ UNIX ທີ່ສາມາດເຂົ້າເຖິງໄດ້ໂດຍສະມາຊິກຂອງກຸ່ມ docker (ເຊິ່ງໃຫ້ສິດທິພິເສດທຽບເທົ່າກັບຜູ້ໃຊ້ຮາກ).

ເພື່ອດໍາເນີນການຄໍາສັ່ງ docker ໂດຍບໍ່ມີ sudo, ເພີ່ມຜູ້ໃຊ້ທີ່ບໍ່ແມ່ນຮາກທັງຫມົດທີ່ຄາດວ່າຈະເຂົ້າໃຊ້ docker, ໃນກຸ່ມ docker ດັ່ງຕໍ່ໄປນີ້. ໃນຕົວຢ່າງນີ້, ຄຳ ສັ່ງເພີ່ມບັນຊີຜູ້ໃຊ້ທີ່ຖືກເຂົ້າສູ່ລະບົບໃນປະຈຸບັນ ($ USER) ຫຼືຊື່ຜູ້ໃຊ້ເຂົ້າໃນກຸ່ມ docker:

$ sudo usermod -aG docker $USER
OR
$ sudo usermod -aG docker username

ເພື່ອກະຕຸ້ນການປ່ຽນແປງເປັນກຸ່ມ, ດຳ ເນີນການ ຄຳ ສັ່ງຕໍ່ໄປນີ້:

$ newgrp docker 
$ groups

ຕໍ່ໄປ, ກວດສອບວ່າທ່ານສາມາດ ດຳ ເນີນການ ຄຳ ສັ່ງ docker ໄດ້ໂດຍບໍ່ຕ້ອງ sudo. ຄໍາສັ່ງຕໍ່ໄປນີ້ດາວໂຫລດຮູບພາບການທົດສອບແລະແລ່ນມັນໃສ່ຖັງ. ເມື່ອຕູ້ຄອນເທນເນີແລ່ນ, ມັນຈະພິມຂໍ້ຄວາມແລະອອກທາງນອກ. ນີ້ຍັງເປັນອີກວິທີ ໜຶ່ງ ທີ່ຈະກວດສອບວ່າການຕິດຕັ້ງຂອງທ່ານເຮັດວຽກໄດ້ດີຫລືບໍ່.

$ docker run hello-world

ເຮັດວຽກກັບ Docker Images

ຮູບ Docker ແມ່ນເອກະສານແມ່ແບບທີ່ອ່ານເທົ່ານັ້ນພ້ອມດ້ວຍ ຄຳ ແນະ ນຳ ສຳ ລັບການສ້າງ Docker container. ທ່ານສາມາດສ້າງຮູບພາບທີ່ທ່ານມັກຫຼືທ່ານສາມາດ ນຳ ໃຊ້ສິ່ງທີ່ສ້າງໂດຍຜູ້ອື່ນແລະເຜີຍແຜ່ໃນ Docker Hub, ຫໍສະມຸດແລະຊຸມຊົນທີ່ໃຫຍ່ທີ່ສຸດໃນໂລກ ສຳ ລັບຮູບພາບບັນຈຸ.

ທ່ານສາມາດຄົ້ນຫາຮູບພາບ centos ໃນ Docker Hub ດ້ວຍ ຄຳ ສັ່ງຕໍ່ໄປນີ້:

$ docker search centos 

ເພື່ອດາວໂຫລດຮູບພາບໃນທ້ອງຖິ່ນ, ໃຫ້ໃຊ້ ຄຳ ສັ່ງດຶງ. ຕົວຢ່າງນີ້ສະແດງວິທີການດາວໂລດຮູບພາບ centos ຢ່າງເປັນທາງການ.

$ docker pull centos

ເມື່ອການດາວໂຫລດ ສຳ ເລັດ, ທ່ານສາມາດລາຍຊື່ພາບທີ່ມີຢູ່ໃນລະບົບທ້ອງຖິ່ນຂອງທ່ານ.

$ docker images

ຖ້າທ່ານບໍ່ຕ້ອງການຮູບພາບອີກຕໍ່ໄປ, ທ່ານສາມາດເອົາມັນອອກຈາກລະບົບຂອງທ່ານ.

$ docker rmi centos
OR
$ docker rmi centos:latest    #where latest is the tag

ແລ່ນແລະຈັດການບັນຈຸຕູ້ docker

ຕູ້ຄອນເທນເນີ Docker ແມ່ນຂະບວນການ ໜຶ່ງ ທີ່ເຮັດວຽກແບບພື້ນເມືອງໃນ Linux ແລະແບ່ງປັນແກ່ນຂອງເຄື່ອງໂຮດກັບບັນຈຸອື່ນ. ກ່ຽວກັບຮູບພາບ Docker, ຖັງແມ່ນພຽງແຕ່ຮູບພາບທີ່ ກຳ ລັງແລ່ນຢູ່.

ເພື່ອເລີ່ມຕົ້ນການບັນຈຸໂດຍອີງໃສ່ຮູບພາບ centos ໃໝ່ ຂອງທ່ານ, ໃຫ້ ດຳ ເນີນການ ຄຳ ສັ່ງຕໍ່ໄປນີ້ທີ່ “ centos” ແມ່ນຊື່ຮູບພາບທ້ອງຖິ່ນແລະ“ cat/etc/centos-release” ແມ່ນ ຄຳ ສັ່ງໃຫ້ແລ່ນເຂົ້າໃນຖັງ:

$ docker run centos cat /etc/centos-release

ຕູ້ຄອນເທນເນີມີຂະບວນການແຍກຕ່າງຫາກທີ່ແຍກອອກຈາກກັນເຊິ່ງມັນມີຂອງຕົນເອງ: ລະບົບແຟ້ມເອກະສານ, ເຄືອຂ່າຍແລະຕົ້ນໄມ້ຂະບວນການແຍກຕ່າງຫາກທີ່ແຍກອອກຈາກເຈົ້າພາບ. ໃຫ້ສັງເກດວ່າທ່ານສາມາດ ໝູນ ໃຊ້ພາຊະນະບັນຈຸໂດຍໃຊ້ບັດປະ ຈຳ ຕົວຂອງຜູ້ໃຊ້, ລະຫັດປະ ຈຳ ຕົວ, ຫຼືຊື່ດັ່ງຮູບຂ້າງລຸ່ມນີ້. ຂະບວນການບັນຈຸຕູ້ຄອນເທັນເນີຂ້າງເທິງຈະ ໝົດ ລົງຫຼັງຈາກທີ່ ຄຳ ສັ່ງແລ່ນ.

ເພື່ອລົງບັນຈຸ Docker, ໃຊ້ ຄຳ ສັ່ງ docker ps ດັ່ງຕໍ່ໄປນີ້. ໃຊ້ທຸງ -l ເພື່ອສະແດງພາຊະນະທີ່ຖືກສ້າງຂື້ນ ໃໝ່ ຫຼ້າສຸດໃນທຸກໆລັດ:

$ docker ps
OR
$ docker ps -l

ເພື່ອສະແດງຕູ້ຄອນເທນເນີທັງ ໝົດ ລວມທັງບັນດາເຄື່ອງທີ່ອອກໄປແລ້ວ, ໃຫ້ໃຊ້ທຸງ -a .

$ docker ps -a

ທ່ານຍັງສາມາດເລີ່ມຕົ້ນການ ນຳ ໃຊ້ຕູ້ຄອນເທນເນີຂອງມັນຫຼັງຈາກທີ່ມັນອອກ. ຍົກຕົວຢ່າງ, ໃນ ຄຳ ສັ່ງທີ່ຜ່ານມາ, ID ບັນຈຸຂອງພວກເຮົາແມ່ນ 94c35e616b91. ພວກເຮົາສາມາດເລີ່ມຕົ້ນການບັນຈຸດັ່ງທີ່ສະແດງ (ສັງເກດວ່າມັນຈະແລ່ນ ຄຳ ສັ່ງແລະອອກ):

$ docker start 94c35e616b91

ເພື່ອຢຸດຖັງແລ່ນທີ່ໃຊ້ ID ຂອງມັນ, ໃຫ້ໃຊ້ ຄຳ ສັ່ງຢຸດຕາມທີ່ສະແດງໄວ້.

$ docker stop 94c35e616b91

Docker ຍັງຊ່ວຍໃຫ້ທ່ານສາມາດ ກຳ ຫນົດຊື່ໃຫ້ກັບພາຊະນະໂດຍໃຊ້ຕົວເລືອກ --name ໃນເວລາເຮັດວຽກ.

$ docker run --name my_test centos cat /etc/centos-release
$ docker ps -l

ຕອນນີ້ທ່ານສາມາດໃຊ້ຊື່ພາຊະນະເພື່ອຈັດການ (ເລີ່ມຕົ້ນ, ຢຸດ, ສະຖິຕິ, ເອົາອອກ, ແລະອື່ນໆ):

$ docker stop my_test
$ docker start my_test
$ docker stats my_test
$ docker rm my_test

ດຳ ເນີນກອງປະຊຸມແບບໂຕ້ຕອບເຂົ້າໃນ Docker Container

ເພື່ອເປີດກອງປະຊຸມແກະທີ່ມີການໂຕ້ຕອບໃນພາຊະນະເພື່ອໃຫ້ທ່ານສາມາດ ດຳ ເນີນການ ຄຳ ສັ່ງພາຍໃນພາຊະນະ, ດຳ ເນີນການ ຄຳ ສັ່ງຕໍ່ໄປນີ້:

$ docker run --name my_test -it centos

ໃນ ຄຳ ສັ່ງຂ້າງເທິງ, ປຸ່ມສັບປ່ຽນ -it ບອກ Docker ໃຫ້ຈັດສັນ pseudo-TTY ທີ່ເຊື່ອມຕໍ່ກັບ stdin ຂອງພາຊະນະດັ່ງນັ້ນຈຶ່ງສ້າງຫອຍແບັກໂຕ້ຕອບໃນຕູ້ຄອນເທນເນີ.

ທ່ານສາມາດອອກຈາກໄດ້ໂດຍການອອກ ຄຳ ສັ່ງອອກທາງດັ່ງທີ່ສະແດງໄວ້.

# exit

ຖ້າທ່ານບໍ່ມັກອອກ, ທ່ານສາມາດຖີ້ມຈາກຖັງບັນຈຸແລະປ່ອຍໃຫ້ມັນແລ່ນ. ເພື່ອເຮັດສິ່ງນັ້ນ, ໃຫ້ໃຊ້ CTRL + p ແລ້ວ CTRL + q ລຳ ດັບທີ່ ສຳ ຄັນ.

ທ່ານສາມາດເຊື່ອມຕໍ່ກັບຕູ້ຄອນເທນເນີໂດຍໃຊ້ ຄຳ ສັ່ງຄັດຕິດເຊິ່ງຈະຕິດກັບການປ້ອນຂໍ້ມູນ, ຜົນຜະລິດແລະສາຍຂໍ້ມູນທີ່ຜິດພາດໃນທ້ອງຖິ່ນກັບພາຊະນະທີ່ແລ່ນ:

$ docker attach my_test

ນອກ ເໜືອ ຈາກນີ້, ທ່ານສາມາດເລີ່ມຕົ້ນບັນຈຸໃນຮູບແບບທີ່ຖືກຖອດອອກໂດຍໃຊ້ -d ທຸງ. ຫຼັງຈາກນັ້ນ, ໃຊ້ ຄຳ ສັ່ງທີ່ແນບມາເພື່ອແນບວັດສະດຸປ້ອນ, ຜົນຜະລິດ, ແລະສາຍໄຟຂໍ້ມູນທີ່ຜິດພາດຂອງທ່ານຢູ່ໃນຕູ້ຄອນເທນເນີທີ່ແລ່ນ:

$ docker run --name my_test -d -it centos
$ docker attach my_test

ສຸດທ້າຍ, ທ່ານສາມາດຢຸດຕູ້ຄອນເທນເນີທີ່ ກຳ ລັງແລ່ນຈາກເວບໄຊທ໌ເຈົ້າພາບໂດຍການ ດຳ ເນີນການ ຄຳ ສັ່ງຕໍ່ໄປນີ້:

$ docker kill my_test

ຫມົດເທົ່ານີ້! ໃນຄູ່ມືນີ້, ພວກເຮົາໄດ້ກວມເອົາວິທີການຕິດຕັ້ງແລະການ ນຳ ໃຊ້ Docker CE ໃນ Linux 20.04 Linux. ຖ້າທ່ານມີ ຄຳ ຖາມໃດໆ, ໃຫ້ໃຊ້ແບບຟອມ ຄຳ ເຫັນຂ້າງລຸ່ມນີ້ເພື່ອສອບຖາມພວກເຮົາ.