Вторая часть видео про домашний сервер из старого железа. Устанавливаем операционную систему и компоненты сервера. Поддержите автора …
Share this:
- Click to share on Twitter (Opens in new window)
- Click to share on Facebook (Opens in new window)
- More
- Click to share on LinkedIn (Opens in new window)
- ← Instalação Zabbix Proxy 5 no CentOS 7
- Raspberry Pi – How to Install Ubuntu Server →
Devin BARTON
I am an avid Linux lover and open source enthusiast. I use Ubuntu and believe in sharing knowledge. Apart from Linux, I love classic detective mysteries.
EASY $35 VPN Server (Impress Job Interviewers!) – Free Lab Friday: Episode 1
Nagios XI: Server (CentOS) and Client (Linuxs) Setup Tutorial
6 installation du client bacula sous windows server 2012 R2
Leave a Reply Cancel reply
Subscribe to Blog via Email
- Operating systems
- OS Windows
- OS Linux
- Networks
- Computer networks
- Telecom networks
- Network administrations
- Windows server
- Linux server
- Technical solutions
- Forum
Recent Posts
- MF-DT131 (M.2 Module with miniSAS HD 36P to U.2 PCIe-NVMe SSD)
- Ableconn PEXM2-130 Dual PCIe NVMe M.2 SSDs Carrier Adapter Card – PCI Express 3.0 x8 Card Support 2
- Futheda M-Key PCIe Adapter M.2 NVME SSD to PCI Express Adapter Card for PC/2U Hight Server, PCIE GE
- LMDE 4 : le meilleur Linux Mint ?!
- Best Linux Distros for Beginners
- How to Install Softaculous
- Docker Advance Tutorial | Part 6 out 16 | — By DevOpsSchool
- Amateur Radio and Linux – A Quick Guide for New Users
- Veloren – Skill Levels and Exploring Free RPG! – Open Source & Linux (Minecraft / Cube World) (Q&A)
- Exploring Hacker Operating Systems: OpenBSD
M | T | W | T | F | S | S |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 |
About us
We are a group of activists in the field of information technology and networks
Our goal
Publishing exclusive articles in various categories
Provide technical assistance and guidance
Simplified educational lessons
All this is based on the experience of every member of our staff
Как установить MySQL в Ubuntu 18.04
Published on July 18, 2018
Введение
MySQL является системой управления базами данных с открытым исходным кодом и обычно используется, как часть популярного стека LAMP (Linux, Apache, MySQL, PHP/Python/Perl). MySQL использует реляционную базу данных и SQL (Structured Query Language, язык структурированных запросов) для управления данными.
Короткая версия установки очень проста: достаточно обновить индекс пакетов, установить пакет mysql-server , а затем запустить скрипт настройки безопасности.
Это руководство описывает процесс установки MySQL версии 5.7 на сервер с Ubuntu 18.04. Если вам необходимо обновить установленную ранее версию MySQL до версии 5.7, вы можете ознакомиться с руководством по обновлению MySQL до версии 5.7.
Необходимые условия
Перед тем, как начать следовать шагам, описанным в этом руководстве, вам необходимо настроить отдельный, не-рутовый (non-root) профиль пользователя на вашем сервере с Ubuntu 18.04. Вы можете сделать это используя нашу статью о первичной настройке сервера на Ubuntu 18.04.
Шаг 1 — Установка MySQL
По умолчанию в репозиторий пакетов APT в Ubuntu 18.04 включена только последняя версия MySQL. На момент написания этого руководства это MySQL 5.7.
Для установки этой версии обновите индекс пакетов apt командой:
Затем установите пакет:
Эта команда установит MySQL, но при этом вам не будет предложено задать пароль или внести какие-либо правки в конфигурацию. Поскольку это делает установку небезопасной, рассмотрим далее, как настроить установленную MySQL.
Шаг 2 — Настройка MySQL
В случае новой установки MySQL вам необходимо выполнить скрипт безопасности. Он изменяет некоторые настройки по умолчанию на более безопасные, например, удалённый вход для пользователей root и пользователи, созданные по умолчанию. В старых версиях MySQL вам было необходимо также инициализировать директорию данных вручную, теперь это делается автоматически.
Выполните скрипт безопасности командой:
В результате выполнения этого скрипта вам будет предложено внести изменения в настройки безопасности вашей MySQL. Сначала вам будет предложено установить плагин валидации паролей (Validate Password Plugin), который позволяет тестировать надёжность паролей MySQL. Далее вам предложат задать пароль для пользователя root вашей установки MySQL. Выберите надёжный пароль и введите его два раза.
Далее вы можете выбирать Y и нажимать ENTER для всех последующих вопросов. При этом будут удалены некоторые анонимные пользователи и тестовые базы данных, будет отключена возможность удалённого входа для root пользователей, после чего все внесённые изменения будут применены к вашей установке MySQL.
Для инициализации директории данных MySQL вам необходимо использовать mysql_install_db для версий меньше, чем 5.7.6, и mysqld —initialize для версии 5.7.6 и более поздних версий. При этом, если вы устанавливаете MySQL для Debian как описано на шаге 1, директория данных будет создана автоматически и вам нет необходимости что-то делать. Если вы при этом попытаетесь всё равно выполнить команду создания директории данных, вы увидите следующую ошибку:
Обратите внимание, несмотря на то, что вы задали пароль для пользователя root для MySQL, этот пользователь не настроен для аутентификации по паролю при подключении к оболочке (shell) MySQL. Вы можете изменить эту настройку на следующем шаге 3.
Шаг 3 — (Опционально) Настройка аутентификации и привилегий
На серверах с Ubuntu, использующей MySQL 5.7 (и более поздние версии), пользователь root в MySQL по умолчанию аутентифицируется с помощью плагина auth_socket , а не по паролю. Это в целом более безопасно и удобно во многих случаях, но не в случае, когда вам необходимо организовать доступ к MySQL со стороны сторонней программы, например, phpMyAdmin.
Для того, чтобы пользователь root в MySQL мог использовать пароль для входа в систему вам необходимо изменить метод аутентификации с auth_socket на mysql_native_password . Для этого войдите в оболочку MySQL следующей командой:
Далее проверьте, какой метод аутентификации используется для каждого из ваших пользователей MySQL:
В этом примере ваш пользователь root использует аутентификацию с помощью плагина auth_socket . Для изменения этой настройки на использование пароля используйте следующую команду ALTER USER . Не забудьте изменить password на ваш сильный пароль:
Далее выполните команду FLUSH PRIVILEGES , которая применит внесённые изменения:
Проверьте методы авторизации для пользователей ещё раз для того, чтобы убедиться, что пользователь root более не использует плагин auth_socket для авторизации:
Как можно видеть на представленном выводе теперь root пользователь MySQL аутентифицируется с использованием пароля. После того, как мы в этом убедились, можно выйти из оболочки MySQL:
В некоторых случаях бывает полезно использовать для входа в MySQL отдельного пользователя. Для создания такого пользователя войдите в оболочку MySQL:
Внимание: Если вы включили вход по паролю для пользователя root, как описано выше, вам потребуется использовать другую команду для входа в оболочку MySQL. Команда выше запустит оболочку с привилегиями обычного пользователя, для получения привилегий администратора вам необходимо выполнить следующую команду:
Далее создайте нового пользователя и задайте для него надёжный пароль:
Далее задайте для пользователя подходящий набор привилегий. Например, вы можете дать пользователю доступ ко всем таблицами в базе данных, а также права на добавление, изменение и удаление пользовательских привилегий следующей командой:
Обратите внимание на то, что в этом случае вам нет необходимости выполнять команду FLUSH PRIVILEGES . Эта команда необходимо только тогда, когда вы изменяете таблицы доступа (grant tables) используя команды INSERT , UPDATE или DELETE . Поскольку вы создали нового пользователя, а не редактируете права существующего пользователя, команда FLUSH PRIVILEGES не является необходимой.
После этого, выйдите из оболочки MySQL:
Теперь мы можем протестировать нашу установку MySQL.
Шаг 4 — Тестирование MySQL
Вне зависимости от того, как именно вы установили MySQL, она должна запуститься автоматически. Проверим это следующей командой:
Вы увидите вывод, похожий на этот:
Если MySQL не запущена, вы можете запустить её с помощью команды sudo systemctl start mysql .
Для дополнительной проверки вы можете попробовать подключиться к базе данных с помощью инструмента mysqladmin , который представляет собой клиент, позволяющий запускать административные команды. Например, эта команда приказывает подключиться к MySQL в качестве пользователя root ( -u root ), запросить пароль ( -p ) и вернуть версию.
Вы увидите вывод, похожий на этот:
Это означает, что MySQL запущена и работает.
Заключение
Теперь на вашем сервере установлена и настроена MySQL. Вот несколько примеров того, что можно сделать дальше:
Ubuntu Documentation
- Page History
- Login to edit
The Xen Project hypervisor is an open-source type-1 or baremetal hypervisor, which makes it possible to run many instances of an operating system or indeed different operating systems in parallel on a single machine (or host). The Xen Project hypervisor is the only type-1 hypervisor that is available as open source. It is used as the basis for a number of different commercial and open source applications, such as: server virtualization, Infrastructure as a Service (IaaS), desktop virtualization, security applications, embedded and hardware appliances. The Xen Project hypervisor is powering the largest clouds in production today. 1
As of Ubuntu 11.10 (Oneiric), the default kernel included in Ubuntu can be used directly with the Xen hypervisor as the management (or control) domain (Dom0 or Domain0 in Xen terminology).
The rest of this guide gives a basic overview of how to set up a basic Xen system and create simple guests. Our example uses LVM for virtual disks and network bridging for virtual network cards. It also assumes Xen 4.4 (the version available in 14.04) and the xl toolstack. It assumes a familiarity with general virtualization issues, as well as with the specific Xen terminology. Please see the Xen wiki for more information.
During installation of Ubuntu
During the install of Ubuntu for the partitioning method choose «Guided — use the entire disk and setup LVM». Then, when prompted to enter «Amount of volume group to use for guided partitioning:» Enter a value just large enough for the Xen Dom0 system, leaving the rest for virtual disks. Enter a value smaller than the size of your installation drive. For example 10 GB or even 5 GB should be large enough for a minimal Xen Dom0 system. Entering a percentage of maximum size (e.g. 25%) is also a reasonable choice.
Installing Xen
Install a 64-bit hypervisor. (A 64-bit hypervisor works with a 32-bit dom0 kernel, but allows you to run 64-bit guests as well.)
As of Ubuntu 14.04, GRUB will automatically choose to boot Xen first if Xen is installed. If you’re running a version of Ubuntu before 14.04, you’ll have to modify GRUB to default booting to Xen; see below for details.
And then verify that the installation has succeeded:
Network Configuration
It’s assumed that you are using a wired interface for your network configuration. WiFi networks are tricky to virtualize and many times not even possible. If you are feeling adventurous, please start here Xen in WiFi Networks.
For this example, we will use the most common Xen network setup: bridged. You will also find an example on how to set up Open vSwitch which has been available since Xen 4.3.
Disable Network Manager
If you are using Network Manager to control your internet connections, then you must first disable it as we will be manually configuring the connections. Please note that you are about to temporarily lose your internet connection so it’s important that you are physically connected to the machine.
Using bridge-utils
In a bridged setup, it is required that we assign the IP address to the bridged interface. Configure network interfaces so that they persist after reboot:
Restart networking to enable xenbr0 bridge:
The brctl command is useful for providing addition bridge information. See: man brctl
Using Open vSwitch
In a bridged setup, it is required that we assign the IP address to the bridged interface. Configure network interfaces so that they persist after reboot:
Set up Open vSwitch
Now bring the interfaces up and acquire an IP address through DHCP. You should have your internet connection back at this point.
Recommended Bridge Settings
For performance and security reasons, it’s highly recommended 2 that netfilter is disabled on all bridges.
Creating vms
There are many options for installing guest images:
virt-builder: A program for building VM disk images; part of the libguestfs set of tools
xen-tools: A set of scripts for creating various PV guests
virt-manager: A management system using libvirt
Converting an existing installation
Or you can manually create one, as described below.
Manually Create a PV Guest VM
In this section we will focus on Paravirtualized (or PV) guests. PV guests are guests that are made Xen-aware and therefore can be optimized for Xen.
As a simple example we’ll create a PV guest in LVM logical volume (LV) by doing a network installation of Ubuntu (other distros such as Debian, Fedora, and CentOS can be installed in a similar way).
List your existing volume groups (VG) and choose where you’d like to create the new logical volume.
Create the logical volume (LV).
Confirm that the new LV was successfully created.
Get Netboot Images
Set Up Initial Guest Configuration
Start the VM and connect to the console to perform the install.
Once installed and back to command line, modify guest configuration to use the pygrub bootloader. These lines will change
Now let’s restart the VM with the new bootloader. (If the VM didn’t shutdown after the install above, you may manually shut it down.)
Quick XL Console Tips
Connect to the VM console
Disconnect from the console
Manually installing an HVM Guest VM
Download Install ISO.
Create a guest config file /etc/xen/ubuntu-hvm.cfg
After the install you can optionally remove the CDROM from the config and/or change the boot order.
For example /etc/xen/ubuntu-hvm.cfg:
Xen Toolstack Choices
Xen and xl
xl is a new toolstack written from the ground up to be a replacement for xend and xm. In Xen 4.4, xl is the default toolstack and xend is deprecated. It is planned to be removed in Xen 4.5.
xl is designed to be command-for-command compatible with xm. You should be able to use the same config file and the same commands you’re used to; just use «xl» instead of «xm».
To switch back to xm, do the following:
xl and xm are very similar in functionality with a few notable exceptions: http://wiki.xen.org/wiki/XL
Xen and Libvirt
Ubuntu 14.04 contains libvirt 1.2.2, which contains support for Xen, both libxl and xend. If you specify «xen:///» as the hypervisor, it will automatically detect which is the appropriate method to use.
Xen and XAPI
Other tips and tricks
Create and format disk image file
Xen and Grub on older versions of Ubuntu
Modify GRUB to default to booting Xen («Xen 4.1-amd64» should be replaced with the appropriate name, in 12.10 the line is «Ubuntu GNU/Linux, with Xen hypervisor». The current string can be obtained by looking for one of the menuentry lines in /boot/grub/grub.cfg. In theory the first element created by the 20_linux_xen script):
See Also
External Links
Xen (последним исправлял пользователь 2-launchpad-joe-philipps-us 2015-04-17 17:45:35)
The material on this wiki is available under a free license, see Copyright / License for details
You can contribute to this wiki, see Wiki Guide for details
Как установить и использовать Docker в Ubuntu 18.04
Published on April 26, 2019
Предыдущая версия данной инструкции подготовлена finid.
Введение
Docker — это приложение, которое упрощает управление процессами приложения в контейнерах * *. Контейнеры позволяют запускать приложения в процессах с изолированием ресурсов. Они подобны виртуальным машинам, но являются при этом более портируемыми, менее требовательны к ресурсам, и больше зависят от операционной системы машины-хоста.
Чтобы подробно ознакомиться с различными компонентами контейнеров Docker, рекомендуем прочитать статью Экосистема Docker: Введение в часто используемые компоненты.
Данная инструкция описывает, как установить и использовать Docker Community Edition (CE) в Ubuntu 18.04. Вы научитесь устанавливать Docker, работать с контейнерами и образами и загружать образы в Docker-репозиторий.
Необходимые условия
Чтобы следовать приведенным инструкциям, вам потребуются:
- Один сервер Ubuntu 18.04, настроенный по руководству по настройке сервера Ubuntu 18.04 initial server setup guide, а также не-рутовый пользователь sudo и файрвол.
- Учетная запись на Docker Hub, если необходимо создавать собственные образы и отправлять их в Docker Hub, как показано в шагах 7 и 8.
Шаг 1 — Установка Docker
Дистрибутив Docker, доступный в официальном репозитории Ubuntu, не всегда является последней версией программы. Лучше установить последнюю версию Docker, загрузив ее из официального репозитория Docker. Для этого добавляем новый источник дистрибутива, вводим ключ GPG из репозитория Docker, чтобы убедиться, действительна ли загруженная версия, а затем устанавливаем дистрибутив.
Сначала обновляем существующий перечень пакетов:
Затем устанавливаем необходимые пакеты, которые позволяют apt использовать пакеты по HTTPS:
Затем добавляем в свою систему ключ GPG официального репозитория Docker:
Добавляем репозиторий Docker в список источников пакетов APT:
Затем обновим базу данных пакетов информацией о пакетах Docker из вновь добавленного репозитория:
Следует убедиться, что мы устанавливаем Docker из репозитория Docker, а не из репозитория по умолчанию Ubuntu:
Вывод получится приблизительно следующий. Номер версии Docker может быть иным:
Обратите внимание, что docker-ce не устанавливается, но для установки будет использован репозиторий Docker для Ubuntu 18.04 ( bionic ).
Далее устанавливаем Docker:
Теперь Docker установлен, демон запущен, и процесс будет запускаться при загрузке системы. Убедимся, что процесс запущен:
Вывод должен быть похож на представленный ниже, сервис должен быть запущен и активен:
При установке Docker мы получаем не только сервис (демон) Docker, но и утилиту командной строки docker или клиент Docker. Использование утилиты командной строки docker рассмотрено ниже.
Шаг 2 — Использование команды Docker без sudo (опционально)
По умолчанию, запуск команды docker требует привилегий пользователя root или пользователя группы docker, которая автоматически создается при установке Docker. При попытке запуска команды docker пользователем без привилегий sudo или пользователем, не входящим в группу docker, выводные данные будут выглядеть следующим образом:
Чтобы не вводить sudo каждый раз при запуске команды docker , добавьте имя своего пользователя в группу docker :
Для применения этих изменений в составе группы необходимо разлогиниться и снова залогиниться на сервере или задать следующую команду:
Для продолжения работы необходимо ввести пароль пользователя.
Убедиться, что пользователь добавлен в группу docker можно следующим образом:
Если вы хотите добавить произвольного пользователя в группу docker , можно указать конкретное имя пользователя:
Далее в этой статье предполагается, что вы используете команду docker как пользователь, находящийся в группе docker. Если вы не хотите добавлять своего пользователя в группу docker, в начало команд необходимо добавлять sudo .
Теперь рассмотрим команду docker .
Шаг 3 — Использование команды Docker
Команда docker позволяет использовать различные опции, команды с аргументами. Синтаксис выглядит следующим образом:
Для просмотра всех доступных подкоманд введите:
Полный список подкоманд Docker 18:
Для просмотра опций использования определенной команды введите:
Для просмотра всей информации о Docker используется следующая команда:
Рассмотрим некоторые команды подробнее. Расскажем сначала о работе с образами.
Шаг 4 — Работа с образами Docker
Контейнеры Docker запускаются из образов Docker. По умолчанию Docker получает образы из хаба Docker Hub, представляющего собой реестр образов, который поддерживается компанией Docker. Кто угодно может создать и загрузить свои образы Docker в Docker Hub, поэтому для большинства приложений и дистрибутивов Linux, которые могут потребоваться вам для работы, уже есть соответствующие образы в Docker Hub.
Чтобы проверить, можете ли вы осуществлять доступ и загружать образы из Docker Hub, введите следующую команду:
Корректный результат работы этой команды, который означает, что Docker работает правильно, представлен ниже:
Изначально Docker не мог находить образ hello-world локально, поэтому загружал образ из Docker Hub, который является репозиторием по умолчанию. После загрузки образа Docker создавал из образа контейнер и запускал приложение в контейнере, отображая сообщение.
Образы, доступные в Docker Hub, можно искать с помощью команды docker и подкоманды search . Например, для поиска образа Ubuntu вводим:
Скрипт просматривает Docker Hub и возвращает список всех образов, имена которых подходят под заданный поиск. В данном случае мы получим примерно следующий результат:
В столбце OFFICIAL строка OK показывает, что образ построен и поддерживается компанией, которая занимается разработкой этого проекта. Когда нужный образ выбран, можно загрузить его на ваш компьютер с помощью подкоманды pull .
Чтобы загрузить официальный образ ubuntu на свой компьютер, запускается следующая команда:
Результат будет выглядеть следующим образом:
После загрузки образа можно запустить контейнер с загруженным образом с помощью подкоманды run . Как видно из примера hello-world , если при выполнении docker с помощью подкоманды run образ еще не загружен, клиент Docker сначала загрузит образ, а затем запустит контейнер с этим образом.
Для просмотра загруженных на компьютер образов нужно ввести:
Вывод должен быть похож на представленный ниже:
Далее в инструкции показано, что образы, используемые для запуска контейнеров, можно изменять и применять для создания новых образов, которые, в свою очередь, могут быть загружены (технический термин push) в Docker Hub или другой Docker-реестр.
Рассмотрим более подробно, как запускать контейнеры.
Шаг 5 — Запуск контейнера Docker
Контейнер hello-world , запущенный на предыдущем этапе, является примером контейнера, который запускается и завершает работу после вывода тестового сообщения. Контейнеры могут выполнять и более полезные действия, а также могут быть интерактивными. Контейнеры похожи на виртуальные машины, но являются менее требовательными к ресурсам.
В качестве примера запустим контейнер с помощью последней версии образа Ubuntu. Комбинация параметров -i и -t обеспечивает интерактивный доступ к командному процессору контейнера:
Командная строка должна измениться, показывая, что мы теперь работаем в контейнере. Она будет иметь следующий вид:
Обратите внимание, что в командной строке отображается идентификатор контейнера. В данном примере это d9b100f2f636 . Идентификатор контейнера потребуется нам позднее, чтобы указать, какой контейнер необходимо удалить.
Теперь можно запускать любые команды внутри контейнера. Попробуем, например, обновить базу данных пакета внутри контейнера. Здесь перед командами не нужно использовать sudo , поскольку вы работаете внутри контейнера как пользователь с привилегиями root:
Теперь в нем можно установить любое приложение. Попробуем установить Node.js:
Данная команда устанавливает Node.js в контейнер из официального репозитория Ubuntu. Когда установка завершена, убедимся, что Node.js установлен:
В терминале появится номер версии:
Все изменения, которые вы производите внутри контейнера, применяются только для этого контейнера.
Чтобы выйти из контейнера, вводим команду exit .
Далее рассмотрим, как управлять контейнерами в своей системе.
Шаг 6 — Управление контейнерами Docker
Через некоторое время после начала использования Docker на вашей машине будет множество активных (запущенных) и неактивных контейнеров. Просмотр ** активных контейнеров **:
Результат получится примерно следующим:
По нашей инструкции вы запустили два контейнера: один из образа hello-world , второй из образа ubuntu . Оба контейнера уже не запущены, но существуют в системе.
Чтобы увидеть и активные, и неактивные контейнеры, запускаем docker ps с помощью параметра -a :
Результат получится примерно следующим:
Чтобы увидеть последние из созданных контейнеров, задаем параметр -l :
Для запуска остановленного контейнера используем команду docker start , затем указываем идентификатор контейнера или его имя. Запустим загруженный из Ubuntu контейнер с идентификатором d9b100f2f636 :
Контейнер запускается. Теперь для просмотра его статуса можно использовать docker ps :
Для остановки запущенного контейнера используем команду docker stop , затем указываем идентификатор контейнера или его имя. В этот раз мы используем имя, которое назначил контейнеру Docker, то есть sharp_volhard :
Если вам контейнер больше не нужен, удаляем его командой docker rm с указанием либо идентификатора, либо имени контейнера. Чтобы найти идентификатор или имя контейнера, связанного с образом hello-world , используйте команду docker ps -a . Затем контейнер можно удалить.
Запустить новый контейнер и задать ему имя можно с помощью параметра —name . Параметр —rm позволяет создать контейнер, который самостоятельно удалится после остановки. Для более подробной информации о данных и других опциях используйте команду docker run help .
Контейнеры можно превратить в образы для построения новых контейнеров. Рассмотрим, как это сделать.
Шаг 7 — Сохранение изменений в контейнере в образ Docker
При запуске контейнера из образа Docker вы можете создавать, изменять и удалять файлы, как и на виртуальной машине. Внесенные изменения применяются только для такого контейнера. Можно запускать и останавливать контейнер, однако как только он будет уничтожен командой docker rm , все изменения будут безвозвратно потеряны.
В данном разделе показано, как сохранить состояние контейнера в виде нового образа Docker.
После установки Node.js в контейнере Ubuntu у вас будет работать запущенный из образа контейнер, но он будет отличаться от образа, использованного для его создания. Однако вам может потребоваться такой контейнер Node.js как основа для будущих образов.
Затем подтверждаем изменения в новом образе Docker с помощью следующей команды.
Параметр -m позволяет задать сообщение подтверждения, чтобы облегчить вам и другим пользователям образа понимание того, какие изменения были внесены, а параметр -a позволяет указать автора. Идентификатор контейнера container_id — этот тот самый идентификатор, который использовался ранее, когда мы начинали интерактивную сессию в контейнере Docker. Если вы не создавали дополнительных репозиториев в Docker Hub, имя репозитория ( repository ) обычно является вашим именем пользователя в Docker Hub.
Например, для пользователя sammy и идентификатора контейнера d9b100f2f636 команда будет выглядеть следующим образом:
После подтверждения (commit) образа, новый образ сохраняется локально на вашем компьютере. Далее в этой инструкции мы расскажем, как отправить образ в реестр Docker (например, в Docker Hub) так, чтобы он был доступен не только вам, но и другим пользователям.
Если теперь просмотреть список образов Docker, в нем окажутся и новый образ, и исходный образ, на котором он был основан:
Результат получится примерно следующим:
В данном примере ubuntu-nodejs — это новый образ, созданный на основе существующего образа ubuntu из Docker Hub. Разница размеров отражает внесенные изменения. В данном примере изменение связано с установкой NodeJS. В следующий раз, когда потребуется запустить контейнер Ubuntu с предустановленным NodeJS, можно использовать этот новый образ.
Образы также могут строиться с помощью файла Dockerfile , который позволяет автоматизировать установку программ в новом образе. Однако в данной статье этот процесс не описывается.
Давайте теперь поделимся новым образом с другими пользователями, чтобы они могли создавать на его основе контейнеры.
Шаг 8 — Отправка контейнеров Docker в репозиторий Docker
Следующим логичным шагом после создания нового образа из существующего будет поделиться созданным образом с друзьями, со всеми в Docker Hub или в другом реестре Docker, к которому у вас есть доступ. Для отправки образов в Docker Hub или другой Docker-реестр, у вас должна быть в нем учетная запись.
В данном разделе показано, как отправлять образы Docker в Docker Hub. Научиться создавать собственный Docker-реестр можно с помощью статьи How To Set Up a Private Docker Registry on Ubuntu 14.04.
Чтобы отправить свой образ, осуществляем вход на Docker Hub.
Для входа требуется ввести пароль Docker Hub. Если введен правильный пароль, вы будете успешно авторизованы.
Примечание: Если имя пользователя в Docker-реестре отличается от локального имени пользователя, которое использовалось для создания образа, необходимо привязать свой образ к имени пользователя в реестре. Чтобы отправить пример из предыдущего шага, вводим:
Затем можно отправлять собственный образ:
Команда для отправки образа ubuntu-nodejs в репозиторий sammy выглядит следующим образом:
Для загрузки образа может потребоваться некоторое время, но после завершения результат будет выглядеть следующим образом:
После отправки образа в реестр, его имя должно появиться в списке панели управления вашей учетной записи, как показано ниже.
Если при отправке появляется ошибка, как показано ниже, значит, не выполнен вход в реестр:
Авторизуемся в реестре с помощью docker login и снова пытаемся отправить образ. Затем убедимся, что он появился на вашей странице в репозитории Docker Hub.
Теперь с помощью команды docker pull sammy / ubuntu-nodejs можно загрузить образ на новую машину и использовать его для запуска нового контейнера.
Вывод
С помощью данной инструкции вы научились устанавливать Docker, работать с образами и контейнерами и отправлять измененные образы в Docker Hub. Мы заложили основу, и теперь можно просмотреть другие инструкции по Docker в сообществе DigitalOcean Community.
Ubuntu Documentation
- Page History
- Login to edit
Installation
Pre-installation checklist
Check that your CPU supports hardware virtualization
To run KVM, you need a processor that supports hardware virtualization. Intel and AMD both have developed extensions for their processors, deemed respectively Intel VT-x (code name Vanderpool) and AMD-V (code name Pacifica). To see if your processor supports one of these, you can review the output from this command:
If 0 it means that your CPU doesn’t support hardware virtualization.
If 1 or more it does — but you still need to make sure that virtualization is enabled in the BIOS.
By default, if you booted into XEN kernel it will not display svm or vmx flag using the grep command. To see if it is enabled or not from xen, enter:
You must see hvm flags in the output.
Alternatively, you may execute:
which may provide an output like this:
You can still run virtual machines, but it’ll be much slower without the KVM extensions.
NOTE: You may see a message like «KVM acceleration can/can NOT be used». This is misleading and only means if KVM is *currently* available (i.e. «turned on»), *not* if it is supported.
Use a 64 bit kernel (if possible)
Running a 64 bit kernel on the host operating system is recommended but not required.
To serve more than 2GB of RAM for your VMs, you must use a 64-bit kernel (see 32bit_and_64bit). On a 32-bit kernel install, you’ll be limited to 2GB RAM at maximum for a given VM.
To see if your processor is 64-bit, you can run this command:
If 0 is printed, it means that your CPU is not 64-bit.
If 1 or higher, it is. Note: lm stands for Long Mode which equates to a 64-bit CPU.
Now see if your running kernel is 64-bit, just issue the following command:
x86_64 indicates a running 64-bit kernel. If you use see i386, i486, i586 or i686, you’re running a 32-bit kernel.
Note: x86_64 is synonymous with amd64.
Installation of KVM
Install Necessary Packages
For the following setup, we will assume that you are deploying KVM on a server, and therefore do not have any X server on the machine.
You need to install a few packages first:
Cosmic (18.10) or later
Lucid (10.04) or later
Karmic (9.10) or earlier
libvirt-bin provides libvirtd which you need to administer qemu and kvm instances using libvirt
qemu-kvm (kvm in Karmic and earlier) is the backend
ubuntu-vm-builder powerful command line tool for building virtual machines
bridge-utils provides a bridge from your network to the virtual machines
You might also want to install virt-viewer, for viewing instances.
Add Users to Groups
Karmic (9.10) and later (but not 14.04 LTS and 18.10)
You need to ensure that your username is added to the group libvirtd:
After this, you need to relogin so that your user becomes an effective member of the libvirtd group. The members of this group can run virtual machines. (You can also ‘newgrp kvm’ in a terminal, but this will affect only that terminal.)
Bionic (18.04 LTS) and higher
The group name is changed to libvirt, and you also need to be a member of ‘kvm’:
Releases prior to Karmic (9.10)
You need to ensure that your username is added to the groups: kvm and libvirtd.
To add your to the groups:
After the installation, you need to relogin so that your user becomes an effective member of kvm and libvirtd user groups. The members of this group can run virtual machines.
Verify Installation
You can test if your install has been successful with the following command:
If on the other hand you get something like this:
Something is wrong (e.g. you did not relogin) and you probably want to fix this before you move on. The critical point here is whether or not you have write access to /var/run/libvirt/libvirt-sock.
The sock file should have permissions similar to:
Also, /dev/kvm needs to be in the right group. If you see:
You might experience problems when creating a virtual machine. Change the device’s group to kvm/libvirtd instead:
Now you need to either relogin or restart the kernel modules:
Optional: Install virt-manager (graphical user interface)
If you are working on a desktop computer you might want to install a GUI tool to manage virtual machines.
Virtual Machine Manager will appear in Applications -> System Tools menu. First create a new connection to local QEMU instance from File -> Add Connection menu. Localhost (QEMU) or QEMU/KVM should appear in the virtual machine list. Note: there already exist Localhost (QEMU Usermode) connection but this does not work at least on Ubuntu 10.04.
Create a new virtual machine by pressing the top left Create a new virtual machine toolbar button.
Version-specific Notes
8.10 (Intrepid) Notes
Two meta packages have been added: ubuntu-virt-server and ubuntu-virt-mgmt. Ubuntu-virt-server installs the packages needed to setup a base virtulization host (kvm, libvirt-bin and openssh-server) and ubuntu-virt-mgmt installs what you need to administer it from a management station (virt-manager, python-vm-builder and virt-viewer).
ubuntu-vm-builder has been replaced by python-vm-builder (tutorial).
Note: libdevmapper does not load its module when it is installed (bug 277648) , so you will either need to do a
or reboot your system before being able to use it.
11.10 (Oneric) Notes
Switching to the server kernel might be helpful if there are start problems with virtual machines (i.e. Windows XP freezes approximately once every 5 starts )
KVM/Installation (последним исправлял пользователь hamishmb 2020-03-23 20:00:34)
The material on this wiki is available under a free license, see Copyright / License for details
You can contribute to this wiki, see Wiki Guide for details