Как сделать файл контейнер

Обновлено: 05.07.2024

Для работы с Облачным хранилищем перейдите в соответствующий раздел панели управления.

Создание контейнера

Для создания нового контейнера:

Выберите класс контейнера. Классы контейнера Облачного хранилища:

  • Стандартное хранение — для хранения и раздачи часто запрашиваемых данных;
  • Холодное хранение — для хранения редко запрашиваемых данных.

Обратите внимание! После создания контейнера класс хранения изменить нельзя.

Подтвердите создание нового контейнера, нажав кнопку Создать контейнер.

Созданный контейнер отобразится на вкладке Контейнеры в списке существующих контейнеров. Для удаления контейнера выделите его в списке и нажмите кнопку Удалить.

Virtual-Hosted–Style Access

Что такое Virtual-Hosted-Style Access

Облачное хранилище поддерживает 2 типа адресации:

Контейнер с Virtual-Hosted-Style адресацией доступен по двум типам адресации. Контейнер, созданный только с Path–Style адресацией не доступен по Virtual-Hosted-Style адресации.

При работе через S3 API рекомендуется использовать Virtual-Hosted-Style. Amazon S3 больше не поддерживает Path-Style адресацию, поэтому некоторые библиотеки и инструменты могут работать некорректно.

Ограничения

На данный момент на одном аккаунте можно создать не более 100 контейнеров с Virtual-Hosted-Style адресацией.

Для совместимости с S3 API имя контейнера должно быть уникально в рамках Объектного хранилища и соответствовать правилам именования бакетов Amazon S3.

Настройки контейнера

Для доступа к настройкам откройте меню соответствующего контейнера и выберите пункт Настройки контейнера.

Для настроек доступны соответствующие блоки:

Добавление файлов

На вкладке Файлы отображаются все файлы, загруженные в данный контейнер. Ограничений на объем загружаемого файла нет, если в настройках не задано иное. Для добавления файла в контейнер нажмите кнопку Выберите файлы для загрузки либо перетащите файл в специальную область. По кнопке Загрузить архив можно загрузить архив с рабочей машины в выбранный контейнер.

Можно загружать в контейнер файлы, запакованные в архив. Для архивов tar, tar.gz, tar.bz2 укажите, надо ли распаковывать архив при загрузке в контейнер или нет. При распаковке архива сам архив в контейнере не сохраняется.

Примечание: если названия папок в загружаемом архиве и хранилище совпадают — папки будут объединены. Если совпадают названия файлов — они будут перезаписаны.

Загруженные файлы можно переименовывать, копировать, перемещать и удалять. Для удаления файла нажмите в меню Удалить файл и в открывшемся окне подтвердите удаление, нажав кнопку Удалить.

Создание и настройка папки в контейнере

Внутри контейнера можно создавать папки и подпапки. Все файлы в папке будут наследовать свойства контейнера.

Для создания папки нажмите на кнопку Создать папку, введите название папки и нажмите кнопку Создать.

Папку можно переименовывать, скачивать в виде архива, копировать, перемещать и удалять.

На вкладке Настройки папки можно указать ссылку для загрузки файлов следующих типов:

  • простая загрузка файла;
  • загрузка с указанным именем;
  • добавление имени загрузки в имя файла;
  • добавление уникального идентификатора в имя файла;
  • загрузка в папку по дате;
  • загрузка в папку по часам;
  • загрузка в уникальную папку.

При отметке соответствующего чек-бокса можно:

  • задавать лимит на размер файлов;
  • разрешать перезапись;
  • позволять игнорировать исходное название файла;
  • отключать веб-интерфейс загрузки файла.

При отметке чек-бокса Временные ограничения открываются в поля ввода с датой и точным временем удаления загруженных файлов.

Также можно добавлять пояснительный текст для страницы загрузки.

После внесения изменений в настройки папки нажмите кнопку Создать.

Скачивание контейнеров и папок в виде zip-архива

Любые контейнер или папки можно скачивать в виде zip-архива.

Также имеется возможность включать/отключать скачивание контейнеров и папок в виде zip-архивов без авторизации. Для этого перейдите на вкладку Настройки контейнера в блок Скачивание в виде архива и установите переключатель в нужное положение.

Существует много разнообразных программ для защиты файлов и папок. В этой статье будет рассмотрена лишь небольшая их часть, проверенная автором лично длительным периодом их практического использования.

Рассмотренные программы обеспечивают надежную защиту папок и файлов от доступа посторонних лиц. Более простые способы защиты данных описаны здесь.

Защита файлов при помощи программы TrueCrypt

Эта программа защищает не непосредственно сами файлы. Она позволяет создавать специальные контейнеры, в которые можно помещать любую информацию (документы, видео, фото и др.). Вся информация в таком контейнере хранится в закриптованном виде. Для доступа к контейнеру пользователь должен знать пароль. В качестве дополнительной защиты кроме пароля можно использовать также ключевой файл, без наличия которого открыть контейнер невозможно.

В качестве контейнера программа может использовать специально созданный файл или же какое-то запоминающее устройство целиком (флешку, логический раздел жесткого диска).

Доступ к зашифрованному контейнеру осуществляется путем его виртуального превращения в отдельный логический раздел (монтирования). Чтобы смонтировать (открыть) контейнер, пользователь должен запустить программу TrueCrypt, указать на этот контейнер, ввести пароль, после чего в перечне запоминающих устройств компьютера (в разделе «Мой компьютер») появится дополнительное запоминающее устройство. Это и будет наш контейнер. С ним можно работать как с обычным запоминающим устройством – копировать, удалять, создавать файлы, просматривать, переименовывать, корректировать их и т.д. При этом, данные, сохраняемые в смонтированном контейнере, криптуются программой «на лету». Пользователь этого даже не замечает.

После размонтирования контейнера он перестанет отображаться в списке запоминающих устройств компьютера.

Как уже было сказано, программа TrueCrypt может создавать контейнеры двух основных видов:

Таким образом, программа TrueCrypt реализует два уровня защиты.

Во-первых, она прячет файлы визуально, помещая их внутрь другого файла или на носитель, который на первый взгляд кажется неотформатированным. Если контейнер даже и попадет в руки непосвященного человека, тот, скорее всего, просто удалит его, даже и не догадываясь о его действительном предназначении.

Во-вторых, данные, хранящиеся в контейнере, хорошо криптуются. Взломать такой контейнер в обычных условиях практически невозможно.

Еще одной важной особенностью программы TrueCrypt является возможность криптования системного логического раздела компьютера, то есть, раздела, в котором установлена операционная система. Пароль для доступа к нему будет запрашиваться компьютером сразу после его включения (еще до начала загрузки Windows). Это очень полезная возможность, поскольку она гарантирует надежную защиту информации даже в том случае, если компьютер будет загружен злоумышленниками со съемного носителя (Live CD) или же если жесткий диск или SSD компьютера будет ими снят и подсоединен к другому компьютеру. Зашифрованный раздел при этом будет опознаваться как неоформатированный.

Пользоваться программой TrueCrypt не сложно, в ней все понятно на интуитивном уровне. Но на всякий случай вот информация о порядке осуществления основных операций:

1. Для создания зашифрованного контейнера – запустить программу, нажать кнопку «Создать том», выбрать один из вариантов создания контейнера и дальше отвечать на вопросы мастера создания тома (см. изображение);

Защита файлов

2. Чтобы смонтировать контейнер - запустить программу, в основном окошке выделить букву устройства, в виде которого будет смонтирован контейнер, затем нажать кнопку «Устройство» или «Файл» (в зависимости от типа контейнера) и указать на контейнер. После этого нажать кнопку «Смонтировать», ввести пароль, указать на ключевой файл (если такой способ защиты был выбран для монтируемого контейнера) и нажать кнопку «ОК».

3. Чтобы размонтировать контейнер нужно открыть окно программы, в основном окошке выбрать смонтированное устройство и нажать кнопку «Размонтировать».

Защита файлов

Защита файлов при помощи программы AxCrypt

Программа AxCrypt защищает непосредственно каждый отдельный файл, сохраняя его в зашифрованном виде и устанавливая на него пароль.

Пользоваться этой программой очень просто и удобно. После установки AxCrypt добавляется в контекстное меню файлов. Чтобы зашифровать файл, достаточно щелкнуть по нему правой кнопкой мышки. Откроется контекстное меню, в котором указатель мышки необходимо навести на пункт «AxCrypt» (см. рис.). Будет предложено несколько вариантов шифрования:

1. Пункт «Encrypt» - файл шифруется, оригинал файла не сохраняется, для защиты пользователь дважды вводит пароль, который важно не забыть, поскольку взломать зашифрованный файл нереально. Этот файл можно будет открыть только при наличии пароля и только на компьютере, на котором установлена программа AxCrypt;

2. Пункт «Encrypt a copy» - все так же, как в первом варианте, только оригинал файла сохраняется;

3. Пункт «Encrypt copy to .EXE» - создаст самораспаковывающийся зашифрованный файл. Его можно будет открыть на любом компьютере при наличии пароля без необходимости установки программы AxCrypt.

Защита файлов при помощи программы S-Tools

Программа S-Tools позволяет шифровать и прятать файлы в любые файлы изображений формата GIF и BMP, а также в аудиозаписи формата WAV. При этом, работоспособность файлов, используемых в качестве контейнера, сохраняется. То есть, фотографии со спрятанными в них данными будут открываться компьютером, как ни в чем не бывало, аудиозаписи-контейнеры также будут воспроизводиться.

Позитивным моментом является также и то, что S-Tools не требует установки (портативная программа).

Но использовать ее в повседневной жизни все же не очень удобно. Самым большим минусом этого способа защиты данных является то, что используемые в качестве контейнеров файлы являются не большими. Соответственно, спрятать в них много информации невозможно.

Программу S-Tools можно использовать для надежной защиты какого-нибудь небольшого текстового файла, например, файла с паролями или другой похожей информацией.

Как пользоваться S-Tools

1. Упаковка файла

Сначала нужно приготовить будущий контейнер – изображение форматов GIF, BMP или аудиофайл формата WAV. Это не самые распространенные форматы. Если в наличии таких не окажется – нужно переконвертировать в них файлы других форматов. Запускаем S-Tools. Перетаскиваем мышкой файл-контейнер в окно утилиты. Там этот файл откроется в виде отдельного окна. В это окно таким же образом перетаскиваем файл, который нужно спрятать. Через несколько секунд S-Tools предложит ввести пароль и выбрать метод шифрования. Вводим пароль в поле «Passphrase» и повторяем его в поле «Verify Passphrase». Жмем кнопку ОК. Через некоторое время в окне S-Tools появится еще одно окно с названием hidden. Это и есть уже упакованный контейнер. Для сохранения результатов нужно щелкнуть по этому окну правой кнопкой мышки, в контекстном меню, которое откроется, выбрать пункт Save as…, указать куда сохранить файл, его имя и нажать кнопку «Сохранить».

Бывает, что S-Tools во время сохранения результатов «съедает» расширение файла. Если созданный контейнер компьютером автоматически не распознается как изображение или аудиофайл, расширение нужно дописать вручную - щелкаем правой кнопкой мышки по файлу, в контекстном меню выбираем «переименовать» и в конце названия файла добавляем .bmp, .jpg или .wav (в зависимости от того, какой тип файла использовался в качестве контейнера).

2. Извлечение файла

Запускаем S-Tools, мышкой перетаскиваем в окно утилиты файл-контейнер. Откроется окно этого файла. Щелкаем по нему правой кнопкой мышки, в контекстном меню выбираем Reveal… Затем вводим пароль и метод шифрования, указанные при упаковке, жмем ОК. Откроется еще одно окно с названием «Revealed Archive», в котором будет отображаться спрятанный файл. Щелчек правой кнопкой мышки по этому файлу, выбираем пункт «Save as», указываем куда извлечь файл, жмем «Сохранить».

BitLocker

Технология BitLocker позволяет шифровать целиком диски и разделы, но вы также можете создавать зашифрованные контейнеры для хранения важных данных и их защиты от несанкционированного доступа, причем сделать это можно исключительно с помощью инструментов, встроенных в Windows. Такие зашифрованные контейнеры можно легко перемещать между системами, делать их резервные копии и скрывать.

В этой статье вы узнаете, как создать зашифрованный контейнер на компьютере с Windows. Но имейте в виду, что ваш ПК должен работать под управлением профессиональной или корпоративной версии Windows, поскольку функции BitLocker доступны только в этих редакциях операционной системы.

Создание виртуального жесткого диска

В первую очередь требуется создать файл виртуального жесткого диска (virtual hard drive, VHD-файл) – его также можно называть образом диска. Этот файл хранится на физическом диске, и он может быть использован в качестве виртуального диска. Например, VHD-файл на 2 Гб будет занимать 2 Гб места на физическом жестком диске, при этом Windows будет его видеть как отдельный диск объемом на 2 Гб.

Родной инструмент в Windows «Управление дисками» предоставляет все необходимые средства для создания и работы с VHD-файлами. Получить доступ к этому инструменту быстро и просто с помощью диалога «Выполнить». Нажмите клавишу с логотипом Windows + R, введите команду diskmgmt.msc и нажмите Enter. В Windows 8 и 8.1 есть еще более удобный способ: в левом нижнем углу экрана щелкните правой кнопкой мыши (или нажмите Windows + X на клавиатуре) и выберите пункт «Управление дисками».

16-07-2014 16-16-45

В окне «Управление дисками» выберите «Действие >> Создать виртуальный жесткий диск».

Укажите желаемый размер и расположение VHD-файла. Файл будет храниться в выбранном вами месте, и его размер будет именно таким, какой вы укажете в этом окне. В качестве типа виртуального жесткого диска вы можете выбрать «Фиксированный размер», как и рекомендуется. После указания всех параметров нажмите «OK».

16-07-2014 16-22-51

VHD появится в виде еще одного диска в окне «Управления дисками» – щелкните на нем правой кнопкой мыши и выберите «Инициализировать диск».

16-07-2014 16-30-03

Выберите опцию «Таблица с GUID разделов (GPT – GUID Partition Table)», если вы используете Windows 8 или 8.1. Это новый тип схемы разделов, и он более надежен, так как хранит несколько копий таблицы разделов на диске.

Вам может быть интересно: Не приходит обновление до 11

16-07-2014 16-37-03

Если вы используете Windows 7, или хотите иметь возможность подключать и располагать доступом к VHD-файлу на системах с Windows 7, выберите «Основная загрузочная запись (MBR – Master Boot Record)».

Теперь нужно создать раздел на VHD. Щелкните правой кнопкой мыши там, где написано «Не распределена» и выберите «Создать простой том».

16-07-2014 16-40-09

Далее пройдите через шаги мастера создания простого тома, чтобы создать раздел с файловой системой NTFS. Все параметры вы можете оставить по умолчанию. Единственное, вы можете изменить метку тома: например, присвойте вашему диску имя «Зашифрованный VHD».

16-07-2014 16-45-51

Шифрование виртуального жесткого диска с помощью BitLocker

Созданный VHD-файл появится в проводнике в виде обыкновенного диска. Щелкните на нем правой кнопкой мыши и выберите «Включить BitLocker».

16-07-2014 16-55-48

Далее пройдите через описанный здесь процесс настройки BitLocker: установите надежный пароль и создайте резервную копию ключа восстановления на случай, если он когда-нибудь вам понадобится.

BitLocker сразу же зашифрует диск, без перезагрузки системы. Это почти мгновенный процесс, если диск пустой. Файлы, хранящиеся на диске, будут зашифрованы и будут храниться внутри VHD.

Блокировка и отключение образа диска

Когда вы закончите с шифрованием, вы можете щелкнуть на диске правой кнопкой мыши и выбрать «Извлечь» для блокировки раздела и отключения VHD-файла на вашем компьютере. Так вы удалите виртуальный диск из списка дисков в папке «Мой компьютер» и окне «Управление дисками».

16-07-2014 17-07-59

Чтобы получить доступ к зашифрованному VHD-файлу в будущем, откройте инструмент «Управление дисками» и выберите «Действие >> Присоединить виртуальный жесткий диск». Затем проследуйте к месту хранения VHD-файла на вашем компьютере и присоедините его к системе.

16-07-2014 17-10-45

После повторного присоединения зашифрованного диска, вам потребуется ввести ваш пароль, чтобы разблокировать его. Также пароль требуется вводить и после перезагрузки компьютера.

16-07-2014 17-14-03

VHD-файл можно легко скопировать и перенести на другую систему. Для этого скопируйте и присоедините VHD-файл к другой системе с Windows Professional или Enterprise, а затем разблокируйте его паролем, чтобы получить доступ к зашифрованным файлам. Однако перед копированием VHD-файла не забывайте извлекать виртуальный диск, чтобы в итоге не получить поврежденный файл.


VeraCrypt — свободный форк TrueCrypt используемый для сквозного шифрования в Windows, Mac OSX и Linux, и позволяет шифровать системный диск, отдельный внутренний или внешний диск или создавать виртуальные диски с использованием файлов-контейнеров.

В этой статье мы рассмотрим интересную возможность VeraCrypt для создания зашифрованного диска со скрытым разделом, этот метод, также называемый методом «двусмысленного шифрования», обеспечивает возможность правдоподобного отрицания наличия второго тома, т.к. не обладая нужным паролем, доказать существование скрытого тома не представляется возможным.

Создание ключевого файла

Для работы с зашифрованным разделом наличие ключевого файла не является обязательным, но если защищать данные по-максимуму, то лишним не будет, например, как еще один фактор для обеспечения достаточно высокой стойкости к принуждающим атакам, также известным как «метод терморектального криптоанализа».


В данном случае предполагается наличие двух ключевых файлов на внешних носителях, один из которых будет хранится в достаточно надежном месте, например, в защищенной банковской ячейке.

Вторая же копия при возникновении угрозы уничтожается. Таким образом, даже если наличие скрытого раздела стало известно, а пароль от него извлечен методом силового воздействия — без ключевого файла доступ к зашифрованной информации получить не удастся.

В VeraCrypt есть инструмент для генерации ключевого файла, позволяющий создать файл со случайными данными заданного размера. Для этого необходимо запустить из меню Сервис — Генератор ключевых файлов, задать необходимое количество ключевых файлов и их размер, и сгенерировать энтропию, совершая хаотичные движения мышкой. После этого сохранить ключевой файл (в нашем случае, также сделав и его копию).

Создание зашфированного раздела

Для того чтобы создать скрытый зашифрованный раздел, нужно сначала подготовить обычный (внешний) зашифрованный том. Для его создания запустим из меню Сервис — Мастер создания томов.

Выберем "Зашифровать несистемный раздел/диск", что бы создать зашифрованный диск (в моем случае это небольшой SSD диск). Если отдельного диска нет, можно использовать "Создать зашифрованный файловый контейнер", т.к. он будет в дальнейшем смонтирован как виртуальный диск, все последующие инструкции справедливы и для него.

Тип тома зададим "Скрытый том Veracrypt", режим тома «Обычный» (т.к. мы создаём новый том). В размещении тома нужно выбрать диск, на котором будет создан зашифрованный том, в случае создания файлового контейнера, нужно будет указать место, где этот файл создать.

Режим создания тома "Создать и отформатировать" если диск пустой, или "Зашифровать на месте", если на диске уже есть данные, которые нужно зашифровать.

Алгоритм шифрования оставляем AES, т.к. несмотря на наличие возможности выбрать один из пяти алгоритмов шифрования, AES является достаточно надежным и быстрым (в VeraCrypt поддерживается и включено по умолчанию аппаратное ускорение этого алгоритма, при использовании процессоров, имеющих набор инструкций AES-NI).

Средняя скорость шифрования/дешифрования в памяти (12 потоков, Апп. ускорение AES включено, Мб/c, больше-лучше):



Зададим надежный пароль (как выбрать надежный пароль мы рассказывали в этой статье).
Интересный факт: пароль “самого разыскиваемого хакера”, использовавшего полное шифрование дисков, Джереми Хэммонда, был именем его кошки: “Chewy 123”;

Перед форматированием тома потребуется совершить несколько хаотичных движений мышкой, что бы создать необходимый уровень энтропии для шифрования. Опцию «быстрое форматирование» не следует использовать, так как предполагается создание скрытого раздела. Если не предполагается хранение больших файлов (>4Гб), тип файловой системы рекомендуется оставить FAT.

Создание скрытого тома

В мастере томов выберем "Зашифровать несистемный раздел/диск". Режим тома "Скрытый том VeraCrypt". Режим создания "Прямой режим". Выберем устройство или контейнер, зашифрованные на предыдущем шаге. Введем созданный ранее пароль и нажмем "Далее".

Укажем тип шифрования для скрытого тома. Как и выше, я рекомендую оставить настройки по умолчанию. На данном этапе мы можем добавить использование ключевого файла, как дополнительной меры защиты.

На следующем шаге определим сколько места "забрать" у основного тома для создания скрытого тома. Дальнейший процесс настройки тома, аналогичен настройке внешнего тома.

Подключение внешнего тома

Монтирование тома может занимать некоторое время, это связано с большим количеством итераций при генерации ключа, что повышает стойкость при атаках «в лоб» в десятки раз.

Для подключения внешнего тома нажмем "Смонтировать", откроем "Параметры" и установим опцию "Защитить скрытый том от повреждения при записи" и укажем пароль и ключевой файл от скрытого тома.


Опцию защиты при монтировании внешнего тома необходимо включать, так как скрытый том является частью внешнего, и запись во внешний том без защиты может повредить скрытый том. В том случае, если вас заставляют смонтировать внешний том силовым методом (против которого этот механизм и был создан), то, естественно, вы его монтируете как обычный том, и VeraCrypt не будет показывать что это внешний том, он будет выглядеть как обычный.

Во внешнем томе можно разместить информацию, которая будет выглядеть или быть отчасти чувствительной, в то время как все самое ценное будет храниться на скрытом томе.

Подключение скрытого тома

Для подключения скрытого тома, нажмем «Смонтировать», укажем пароль и ключевой файл от скрытого тома. При примонтированном скрытом томе, VeraCrypt добавляет пометку "Скрытый".


Векторы атаки

Атака в лоб:

Атаки методом перебора, при наличии стойкого пароля малоэффективна — это тот сценарий, к которому и готовились разрабочики VeraCrypt, а при наличии ключевого файла — неэффективны абсолютно.

Извлечение ключей шифрования:

Теоретически, получив доступ к выключенному компьютеру, есть некоторый шанс извлечь ключи шифрования из памяти или файла гибернации и файла подкачки. Для противодействия такого рода атакам рекомендуется включить опцию шифрования ключей и паролей в ОЗУ в меню Настройка — Быстродействие и отключить файл подкачки и спящий режим.

Скрытое управление:

Хранение данных в зашифрованном виде убережет их в случае утери, конфискации или кражи устройства, но в случае, если злоумышленники получили скрытый контроль над компьютером по сети, например, с использованием вредоносного ПО с возможностями удаленного управления, им не составит труда получить ключевой файл и пароль в момент использования. Варианты противодействия этим типам атак рассматривать не будем, так как тема сетевой безопасности довольно обширна, и выходит за рамки данной статьи.

Docker позволяет не только загружать и использовать готовые контейнеры, но создавать свои. В данной инструкции мы пошагово разберем установку Docker на Linux, создание собственного образа и загрузку его на Docker Hub.

Установка Docker

Рассмотрим примеры установки на базе операционных систем Red Hat/CentOS и Debian/Ubuntu.

Red Hat/CentOS

Устанавливаем репозиторий — для этого загружаем файл с настройками репозитория:

* если система вернет ошибку, устанавливаем wget командой yum install wget.

. и переносим его в каталог yum.repos.d:

mv docker-ce.repo /etc/yum.repos.d/

yum install docker-ce docker-ce-cli containerd.io

Если система вернет ошибку Необходимо: container-selinux >= . , переходим на страницу пакетов CentOS, находим нужную версию container-selinux и копируем на него ссылку:

Копирование ссылки на нужную версию container-selinux

. с помощью данной ссылки выполняем установку:

После повторяем команду на установку докера:

yum install docker-ce docker-ce-cli containerd.io

Debian/Ubuntu

В deb-системе ставится командой:

apt-get install docker docker.io

После установки

Разрешаем запуск сервиса docker:

systemctl enable docker

. и запускаем его:

systemctl start docker

docker run hello-world

. мы должны увидеть:

.
Hello from Docker!
This message shows that your installation appears to be working correctly.
.

Сборка нового образа

Сборка начинается с создания файла Dockerfile — он содержит инструкции того, что должно быть в контейнере. В качестве примера, соберем свой веб-сервер nginx.

И так, чтобы создать свой образ с нуля, создаем каталог для размещения Dockerfile:

mkdir -p /opt/docker/mynginx

* где /opt/docker/mynginx — полный путь до каталога, где будем создавать образ.

. переходим в данный каталог:

. и создаем Dockerfile:

RUN yum install -y epel-release && yum install -y nginx
RUN yum clean all
RUN echo "daemon off;" >> /etc/nginx/nginx.conf
RUN sed -i "0,/nginx/s/nginx/docker-nginx/i" /usr/share/nginx/html/index.html

* в данном файле мы:

  1. используем базовый образ centos 7;
  2. в качестве автора образа указываем Dmitriy Mosk;
  3. задаем временную зону внутри контейнера Europe/Moscow.
  4. устанавливаем epel-release и nginx;
  5. чистим систему от метаданных и кэша пакетов после установки;
  6. указываем nginx запускаться на переднем плане (daemon off);
  7. в индексном файле меняем первое вхождение nginx на docker-nginx;
  8. запускаем nginx.

* подробное описание инструкций Dockerfile смотрите ниже.

docker build -t dmosk/nginx:v1 .

* где dmosk — имя автора; nginx — название для сборки; v1 — тег с указанием версии. Точка на конце указывает, что поиск Dockerfile выполняем в текущей директории.

. начнется процесс сборки образа — после его завершения мы должны увидеть что-то на подобие:

Successfully built eae801eaeff2
Successfully tagged dmosk/nginx:v1

Посмотреть список образов можно командой:

Создаем и запускаем контейнер из образа:

docker run -d -p 8080:80 dmosk/nginx:v1

* в данном примере мы запустим контейнер из образа dmosk/nginx:v1 и укажем, что необходимо опубликовать внешний порт 8080, который будет перенаправлять трафик на порт 80 внутри контейнера.

Посмотреть созданные контейнеры можно командой:

Запустить или остановить контейнеры можно командами:

docker stop 5fe78aca2e1d

docker start 5fe78aca2e1d

* где 5fe78aca2e1d — идентификатор контейнера.

Редактирование образа

В примере выше мы рассмотрели создание нового образа с нуля. Также, мы можем взять любой другой образ, отредактировать его и сохранить под своим названием.

Скачаем образ операционной системы CentOS:

docker pull centos:latest

Войдем в скачанный образ для его изменения:

docker run -t -i centos:latest /bin/bash

Внесем небольшие изменения, например, создадим учетную запись:

* в данном примере мы создали пользователя dmosk и задали ему пароль.

docker commit -m "Add user dmosk" -a "Dmitry Mosk" 8f07ef93918f centos:my

* где -m — параметр для указания комментария; -a — указывает автора; 8f07ef93918f — идентификатор контейнера, который был нами изменен (его можно было увидеть в приглашении командной строки); centos:my — название нашего нового образа.

Новый образ создан.

Загрузка образа на Docker Hub

Заходим на Docker Hub страницу регистрации. Создаем пользователя:

Переходим на страницу Repositories и создаем свой репозиторий, например, dmosk. Теперь можно загрузить наши образы в репозиторий.

docker login --username dmosk

Задаем тег для одного из образов и загружаем его в репозиторий:

docker tag centos:my dmosk/dmosk:centos

docker push dmosk/dmosk:centos

Загрузим второй образ:

docker tag dmosk/nginx:v1 dmosk/dmosk:nginx

docker push dmosk/dmosk:nginx

В Docker Hub должны появиться наш образы:


docker login --username dmosk

docker pull dmosk/dmosk:nginx

docker run -d -p 8080:80 dmosk/dmosk:nginx

Описание инструкций Dockerfile

Резервное копирование и восстановление контейнера

Созданный нами контейнер можно сохранить в виде архива и, при необходимости, перенести на другой сервер или оставить как бэкап.

Создание резерва

И так, для создания резервной копии контейнера, смотрим их список:

. и для нужного выполняем команду:

docker save -o /backup/docker/container.tar <container image>

* в данном примере мы создаем архив контейнера <container image> в файл /backup/docker/container.tar.

Чтобы уменьшить размер, занимаемый созданным файлом, раархивиркем его командой:

* в итоге, мы получим файл container.tar.gz.

Восстановление

Сначала распаковываем архив:

После восстанавливаем контейнер:

docker load -i container.tar

Смотрим, что нужный нам контейнер появился:

Дополнительные команды

В данном подразделе приведем примеры команд, которые могут оказаться полезными при работе с образами.

1. Удалить один образ:

docker rmi <название образа или его ID>

docker rmi dmosk/nginx:v1

2. Удалить все образы:

docker rmi $(docker images -q)

Мы можем получить ошибки на подобие:

Error response from daemon: conflict: unable to delete 857594f280c1 (must be forced) - image is being used by stopped container .

Это значит, что для удаляемого образа есть действующие контейнеры — они могут быть как включены, так и находится в отключенном состоянии. Удалить все нерабочие контейнеры можно командой:

docker rm $(docker ps --filter status=exited -q)

Если нужно, можно остановить все действующие контейнеры командой:

docker stop $(docker ps -a -q)

Также мы можем принудительно удалить все образы, даже если они используются для контейнеров в данный момент:

docker rmi -f <название образа или его ID>

* добавлена опция -f.

3. Для выявления проблем при запуске или в работе контейнера очень полезна опция для просмотра логов:

Читайте также: