15%

БпСстСтС 15% ΠΎΡ‚ всички услуги Π·Π° хостинг

ВСствайтС умСнията си ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π΅Ρ‚Π΅ ΠΎΡ‚ΡΡ‚ΡŠΠΏΠΊΠ° Π·Π° всСки хостинг ΠΏΠ»Π°Π½

Π˜Π·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡ‚Π΅ ΠΊΠΎΠ΄:

Skills
Π—Π° Π½Π°Ρ‡Π°Π»ΠΎ
31.10.2024

Как Π΄Π° инсталиратС Docker Π² CentOS

Docker Π΅ ΠΌΠΎΡ‰Π΅Π½ инструмСнт Π·Π° ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π°Π½Π΅, внСдряванС ΠΈ стартиранС Π½Π° прилоТСния Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ, ΠΊΠΎΠΉΡ‚ΠΎ осигурява ΠΈΠ·ΠΎΠ»ΠΈΡ€Π°Π½Π° срСда, която опростява Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π²Π°Π½Π΅Ρ‚ΠΎ ΠΈ внСдряванСто. Π˜Π½ΡΡ‚Π°Π»ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π½Π° Docker Π² CentOS Π²ΠΈ позволява Π΄Π° сС Π²ΡŠΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ ΠΎΡ‚ Ρ‚Π΅Π·ΠΈ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈ. Π’ΠΎΠ²Π° Ρ€ΡŠΠΊΠΎΠ²ΠΎΠ΄ΡΡ‚Π²ΠΎ Ρ‰Π΅ Π²ΠΈ ΠΏΡ€Π΅Π²Π΅Π΄Π΅ ΠΏΡ€Π΅Π· процСса Π½Π° инсталиранС Π½Π° Docker Π½Π° ΡΡŠΡ€Π²ΡŠΡ€ с CentOS

1. АктуализиранС Π½Π° систСмата

ΠŸΡ€Π΅Π΄ΠΈ Π΄Π° инсталиратС Docker, Π΅ Π΄ΠΎΠ±Ρ€Π΅ Π΄Π° Π°ΠΊΡ‚ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€Π°Ρ‚Π΅ систСмата си, Π·Π° Π΄Π° стС сигурни, Ρ‡Π΅ всички ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈ са Π°ΠΊΡ‚ΡƒΠ°Π»Π½ΠΈ

sudo yum update -y

2. Π˜Π½ΡΡ‚Π°Π»ΠΈΡ€Π°Π½Π΅ Π½Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΈΡ‚Π΅ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈ

Docker изисква ΠΏΡŠΡ€Π²ΠΎ Π΄Π° сС инсталират някои зависимости. Π˜Π·ΠΏΡŠΠ»Π½Π΅Ρ‚Π΅ слСдната ΠΊΠΎΠΌΠ°Π½Π΄Π°, Π·Π° Π΄Π° Π³ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚Π΅

sudo yum install -y yum-utils device-mapper-persistent-data lvm2

ΠŸΠ°ΠΊΠ΅Ρ‚ΡŠΡ‚ yum-utils прСдоставя ΠΏΠΎΠΌΠΎΡ‰Π½Π°Ρ‚Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ° yum-config-manager, която Ρ‰Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅, Π·Π° Π΄Π° настроим Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅Ρ‚ΠΎ Π½Π° Docker

3. Настройка Π½Π° Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅Ρ‚ΠΎ Docker

Π‘Π»Π΅Π΄ Ρ‚ΠΎΠ²Π° Π΄ΠΎΠ±Π°Π²Π΅Ρ‚Π΅ ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»Π½ΠΎΡ‚ΠΎ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ Π½Π° Docker Π² систСмата си

sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

Π’ΠΎΠ²Π° Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ прСдоставя Π½Π°ΠΉ-Π½ΠΎΠ²ΠΈΡ‚Π΅ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈ Docker Π·Π° CentOS

4. Π˜Π½ΡΡ‚Π°Π»ΠΈΡ€Π°ΠΉΡ‚Π΅ Docker

Π‘Π»Π΅Π΄ ΠΊΠ°Ρ‚ΠΎ стС Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅Ρ‚ΠΎ, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° инсталиратС Docker

sudo yum install -y docker-ce

Π’ΠΎΠ²Π° инсталира Π΅Π½Π΄ΠΆΠΈΠ½Π° Docker Π½Π° Π²Π°ΡˆΠ°Ρ‚Π° систСма CentOS

5. Π‘Ρ‚Π°Ρ€Ρ‚ΠΈΡ€Π°Π½Π΅ ΠΈ Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½Π΅ Π½Π° Docker

Π‘Π»Π΅Π΄ ΠΊΠ°Ρ‚ΠΎ Docker Π΅ инсталиран, стартирайтС услугата Docker ΠΈ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Ρ‚Π΅ Π½Π΅ΠΉΠ½ΠΎΡ‚ΠΎ стартиранС ΠΏΡ€ΠΈ стартиранС

sudo systemctl start docker
sudo systemctl enable docker

Π—Π° Π΄Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚Π΅ ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅Ρ‚ΠΎ Π½Π° услугата Docker, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° стартиратС

sudo systemctl status docker

6. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° инсталацията Π½Π° Docker

Π—Π° Π΄Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚Π΅ Π΄Π°Π»ΠΈ Docker Ρ€Π°Π±ΠΎΡ‚ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»Π½ΠΎ, ΠΈΠ·ΠΏΡŠΠ»Π½Π΅Ρ‚Π΅ слСдната ΠΊΠΎΠΌΠ°Π½Π΄Π°

sudo docker run hello-world

Π’Π°Π·ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π° изтСгля тСстово ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΎΡ‚ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅Ρ‚ΠΎ Π½Π° Docker ΠΈ Π³ΠΎ стартира. Ако всичко Π΅ настроСно ΠΏΡ€Π°Π²ΠΈΠ»Π½ΠΎ, Ρ‰Π΅ Π²ΠΈΠ΄ΠΈΡ‚Π΅ ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅, Ρ‡Π΅ Docker Π΅ инсталиран ΠΈ Ρ€Π°Π±ΠΎΡ‚ΠΈ

7. Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° Docker ΠΊΠ°Ρ‚ΠΎ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π», ΠΊΠΎΠΉΡ‚ΠΎ Π½Π΅ Π΅ ΠΊΠΎΡ€Π΅Π½ΠΎΠ² ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π» (ΠΏΠΎ ΠΈΠ·Π±ΠΎΡ€)

По ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅ Docker изисква ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈ Π½Π° root. Π—Π° Π΄Π° ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚Π΅ Π½Π° ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π», ΠΊΠΎΠΉΡ‚ΠΎ Π½Π΅ Π΅ root, Π΄Π° изпълнява ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ Π½Π° Docker, Π΄ΠΎΠ±Π°Π²Π΅Ρ‚Π΅ Π³ΠΎ към Π³Ρ€ΡƒΠΏΠ°Ρ‚Π° docker

Π‘Ρ‚ΡŠΠΏΠΊΠ° 1: БъздаванС Π½Π° Π³Ρ€ΡƒΠΏΠ°Ρ‚Π° Docker

sudo groupadd docker

Π‘Ρ‚ΡŠΠΏΠΊΠ° 2: Π”ΠΎΠ±Π°Π²Π΅Ρ‚Π΅ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π» към Π³Ρ€ΡƒΠΏΠ°Ρ‚Π° Docker

Π—Π°ΠΌΠ΅Π½Π΅Ρ‚Π΅ your_username с дСйствитСлното потрСбитСлско ΠΈΠΌΠ΅, Π½Π° ΠΊΠΎΠ΅Ρ‚ΠΎ искатС Π΄Π° Π΄Π°Π΄Π΅Ρ‚Π΅ Π΄ΠΎΡΡ‚ΡŠΠΏ Π΄ΠΎ Docker

sudo usermod -aG docker your_username

Π‘Π»Π΅Π΄ ΠΊΠ°Ρ‚ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚Π΅ потрСбитСля, ΠΈΠ·Π»Π΅Π·Ρ‚Π΅ ΠΈ Π²Π»Π΅Π·Ρ‚Π΅ ΠΎΡ‚Π½ΠΎΠ²ΠΎ, Π·Π° Π΄Π° влязат Π² сила ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈΡ‚Π΅

8. Основни команди на Docker

Π•Ρ‚ΠΎ някои основни ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ Π½Π° Docker, Π·Π° Π΄Π° Π·Π°ΠΏΠΎΡ‡Π½Π΅Ρ‚Π΅ Ρ€Π°Π±ΠΎΡ‚Π°

  • Бписък Π½Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈΡ‚Π΅ Π½Π° Docker
    docker ps # Показва Ρ€Π°Π±ΠΎΡ‚Π΅Ρ‰ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ docker ps -a # Показва всички ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ, Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ спрСнитС
  • Π‘Ρ‚Π°Ρ€Ρ‚ΠΈΡ€Π°Π½Π΅ ΠΈ спиранС Π½Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ
    docker start container_id
    docker stop container_id
  • ΠŸΡ€Π΅ΠΌΠ°Ρ…Π²Π°Π½Π΅ Π½Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ
    docker rm container_id
  • Бписък с ΠΎΠ±Ρ€Π°Π·ΠΈ Π½Π° Docker
    docker images
  • Π˜Π·Ρ‚Π΅Π³Π»ΡΠ½Π΅ Π½Π° ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Docker
    docker pull image_name

9. ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€Π°Π½Π΅ Π½Π° Docker Π·Π° стартиранС ΠΏΡ€ΠΈ Π·Π°Ρ€Π΅ΠΆΠ΄Π°Π½Π΅

Docker Π²Π΅Ρ‡Π΅ трябва Π΄Π° Π΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€Π°Π½ Π΄Π° сС стартира ΠΏΡ€ΠΈ Π·Π°Ρ€Π΅ΠΆΠ΄Π°Π½Π΅. Π’ΡŠΠΏΡ€Π΅ΠΊΠΈ Ρ‚ΠΎΠ²Π°, Π°ΠΊΠΎ трябва Π΄Π° Π³ΠΎ Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Ρ‚Π΅ ΠΎΡ‚Π½ΠΎΠ²ΠΎ

sudo systemctl enable docker

10. Π”ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π½Π° конфигурация Π½Π° Docker (ΠΏΠΎ ΠΈΠ·Π±ΠΎΡ€)

  • НастройванС Π½Π° Docker Compose: Docker Compose Π²ΠΈ позволява Π΄Π° Π΄Π΅Ρ„ΠΈΠ½ΠΈΡ€Π°Ρ‚Π΅ ΠΈ ΠΈΠ·ΠΏΡŠΠ»Π½ΡΠ²Π°Ρ‚Π΅ прилоТСния с няколко ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°. Π˜Π½ΡΡ‚Π°Π»ΠΈΡ€Π°ΠΉΡ‚Π΅ Docker Compose с
    sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose sudo chmod +x /usr/local/bin/docker-compose
  • ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€Π°Π½Π΅ Π½Π° Docker Daemon: ΠŸΠ΅Ρ€ΡΠΎΠ½Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π΅ Π½Π° Docker Ρ‡Ρ€Π΅Π· Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€Π°Π½Π΅ Π½Π° Ρ„Π°ΠΉΠ»Π° /etc/docker/daemon.json. ΠœΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€Π°Ρ‚Π΅ ΠΎΠΏΡ†ΠΈΠΈ ΠΊΠ°Ρ‚ΠΎ рСгистриранС, Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΈ Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ ΠΈ ΠΌΡ€Π΅ΠΆΠΎΠ²ΠΈ настройки.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π˜Π½ΡΡ‚Π°Π»ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π½Π° Docker Π² CentOS осигурява гъвкава срСда Π·Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈΠ·ΠΈΡ€Π°Π½ΠΈ прилоТСния, ΠΊΠ°Ρ‚ΠΎ опростява процСситС Π½Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈ внСдряванС. Π‘Π»Π΅Π΄ ΠΊΠ°Ρ‚ΠΎ инсталиратС ΠΈ стартиратС Docker, Π²Π΅Ρ‡Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π·Π°ΠΏΠΎΡ‡Π½Π΅Ρ‚Π΅ Π΄Π° ΠΏΡ€ΠΎΡƒΡ‡Π²Π°Ρ‚Π΅ контСйнСризацията Π·Π° Π²Π°ΡˆΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈ Π² CentOS.

15%

БпСстСтС 15% ΠΎΡ‚ всички услуги Π·Π° хостинг

ВСствайтС умСнията си ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π΅Ρ‚Π΅ ΠΎΡ‚ΡΡ‚ΡŠΠΏΠΊΠ° Π·Π° всСки хостинг ΠΏΠ»Π°Π½

Π˜Π·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡ‚Π΅ ΠΊΠΎΠ΄:

Skills
Π—Π° Π½Π°Ρ‡Π°Π»ΠΎ