Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

лаба9

.docx
Скачиваний:
5
Добавлен:
28.05.2023
Размер:
5.13 Mб
Скачать

Федеральное государственное автономное образовательное учреждение

высшего профессионального образования

«ОМСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ»

Кафедра «Комплексная защиты информации»

Лабораторная работа

по курсу «Базы данных»

Лабораторная работа №9

Выполнили:

Студентки 2-го курса

гр. …………..

Принял:

Самотуга А.Е.

Омск 2022

Установка Kali Linux

Рис. 1 Выбор языка

Рис. 2 Выбор местонахождения

Рис. 3 Настройка клавиатуры

Рис. 4 Настройка сети (Ввод имени компьютера)

Рис. 5 Ввод имени домена

Рис. 6 Настройка учетной записи

Рис. 7 Настройка учетной записи

Рис. 8 Настройка паролей

Рис. 9 Настройка времени

Рис. 10 Метод разметки дисков

Рис. 11 Выбор диска для разметки

Рис. 12 Выбор схемы разметки

Рис. 13 Завершение разметки дисков

Рис. 14 Запись изменений на диск

Рис. 15 Установка базовой системы

Рис. 16 Выбор ПО

Рис. 17 Установка системного загрузчика GRUB

Рис. 18 Выбор устройства для установки системного загрузчика

Рис. 19 Авторизация

Рис. 20 Рабочий стол

Часть 1

Цель: познакомиться с основными возможностями docker.

Задачи:

1. Познакомиться с процессом установки docker.

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

3. Выполнить шаги, оформить отчет.

Шаг 1. Обновление пакетов

Рис. 21 Обновление пакетов

Шаг 2. Установка докера

Рис. 22 Установка докера

Шаг 3. Запуск сервиса docker вместе с запуском ОС

Рис. 23 Запуск сервиса docker вместе с запуском ОС

Шаг 4. Запуск докера без sudo

Рис. 24 Запуск докера без sudo

Шаг 5. Проверка успешной установки

Рис. 25 Проверка успешной установки

Шаг 6. Запуск контейнера hello-world (docker run hello-world)

Рис. 26 Запуск контейнера hello-world (docker run hello-world)

Шаг 7. Выполнение команды docker ps

Рис. 27 Выполнение команды docker ps

Шаг 8. Выполнение команды docker ps –а

Рис. 28 Выполнение команды docker ps –а

Шаг 9. Удаление контейнера с hello-world (docker rm <id контейнера>)

Рис. 29 Удаление контейнера с hello-world (docker rm <id контейнера>)

Шаг 10. Запуск контейнера (docker run --name db-task-0 -e MYSQL_ROOT_PASSWORD=my-pass -p 127.0.0.1:3305:3306 –d)

Рис. 30 Запуск контейнера (docker run --name db-task-0 -e MYSQL_ROOT_PASSWORD=my-pass -p 127.0.0.1:3305:3306 –d)

Шаг 11. Выполнение команды docker ps –а

Рис. 31 Выполнение команды docker ps –а

Шаг 12. Подключение к контейнеру

Рис. 32 Подключение к контейнеру

Шаг 13. Выполнение запроса show databases

Рис. 33 Выполнение запроса show databases

Шаг 14. Остановка контейнера (docker stop db-task-0) и его удаление (docker rm db-task-0)

Рис. 34 Остановка контейнера (docker stop db-task-0) и его удаление (docker rm db-task-0)

Часть 2

Цель: познакомиться с redis.

Задачи:

1. Развернуть redis

2. Выполнить задания

3. Оформить и сдать отчет

Шаг 1. Запуск redis-server (docker run --name redis-server -d redis redis-server --appendonly yes)

Рис. 35 Запуск redis-server (docker run --name redis-server -d redis redis-server --appendonly yes)

Шаг 2. Подключение к redis-server через консольный клиент (docker run -it --link redis-server:redis --rm redis redis-cli -h redis -p 6379)

Рис. 36 Подключение к redis-server через консольный клиент (docker run -it --link redis-server:redis --rm redis redis-cli -h redis -p 6379)

Шаг 3. Ввод команды ping

Рис. 37 Ввод команды ping

Шаг 4. Создание переменной (SET mykey “Hello”) и её считывание (GET mykey)

Рис. 38 Создание переменной (SET mykey Hello) и её считывание (GET mykey)

Шаг 5. Запрос данных по ключу, которого ещё нет (GET notmykey)

Рис. 39 Запрос данных по ключу, которого ещё нет (GET notmykey)

Шаг 6. Проверка регистрозависимы ли ключи

Рис. 40 Проверка регистрозависимы ли ключи

Шаг 7. Создание ключа и запись туда 0 числом

Рис. 41 Создание ключа и запись туда 0 числом

Шаг 8. Увеличение ключа на 1(INCR mycounter)

Рис. 42 Увеличение ключа на 1(INCR mycounter)

Шаг 9. Получение и перезапись счётчика (GETSET notmykey 15)

Рис. 43 Получение и перезапись счётчика (GETSET notmykey 15)

Шаг 10. Проверка существования ключа (EXISTS mykey)

Рис. 44 Проверка существования ключа (EXISTS mykey)

Шаг 11. Удаление ключа (DEL mykey)

Рис. 45 Удаление ключа (DEL mykey)

Шаг 12. Добавление к ключу строки “Hello” (APPEND mykey “Hello”)

Рис. 46 Добавление к ключу строки “Hello” (APPEND mykey “Hello”)

Шаг 13. Добавление к ключу строки “World” (APPEND mykey “World”)

Рис. 47 Добавление к ключу строки “World” (APPEND mykey “World”)

Шаг 14. Вывод результата (GET mykey)

Рис. 48 Вывод результата (GET mykey)

Шаг 15. Завершение redis-server (shutdown)

Рис. 49 Завершение redis-server (shutdown)

Часть 3

Цель: Изучить процесс миграции БД.

Задачи:

1. Подготовить стенд (нужные контейнеры)

2. Выполнить шаги по заданию

3. Оформить и сдать отчет

Шаг 1. Создание папку app

Рис. 50 Создание папки app

Шаг 2. Создание Composer.phar контейнера и папки basic

Рис. 51 Создание Composer.phar

Рис. 52 Создание папки basic

Шаг 3. Создание контейнера mysql

Рис. 53 Создание контейнера mysql

Шаг 4. Создание контейнера apache

Рис. 54 Создание контейнера apache

Шаг 5. Создание докер файла

Рис. 55 Докер файла

Шаг 6. Собираем образ

Рис. 56 Созданный образ

Шаг 7. Запуск контейнера с этим образом

Рис. 57 Запуск контейнера с образом

Рис. 58 Веб-страница

Шаг 8. Установка расширения

Рис. 59 Установка расширения

Шаг 9. Создание базы данных yii

Рис. 60 Создание бд yii

Шаг 10. Создание миграций

Рис. 61 Создание миграций

Рис. 62 Файлы с миграциями

Шаг 11. Конфигурация файлов с миграциями

Рис. 63 Конфигурация таблицы stud

Рис. 64 Конфигурация таблицы cafedra

Рис. 65 Конфигурация таблицы faculty

Шаг 12. Запуск миграции

Рис. 66 Запуск миграции

Шаг 13. Проверка наличия таблиц в базе данных

Рис. 67 Проверка наличия таблиц

Часть 4.

Цель: Научиться создавать свой образ докера, редактировать его, загружать и

скачивать с Docker Hub, импортировать и экспортировать контейнер.

Задачи:

1) Ознакомиться с заданием

2) Выполнить его

3) Оформить отчет

Шаг 1. Создание образа ngnx

Рис. 68 Создание каталога для размещения Dockerfile

Рис. 69 Конфигурация файла Dockerfile

Рис. 70 Создание образа

Шаг 2. Запуск образа

Рис. 71 Запуск образа

Рис. 72 Веб-страница

Шаг 3. Скачивание образа OC CentOS

Рис. 73 Установка образа OC CentOS

Шаг 4. Добавление нового пользователя и файла с текстом в образ

Рис. 74 Изменение образа

Шаг 5. Коммитим образ

Рис. 75 Коммит образа

Шаг 6. Создание репозитория на DockerHub

Рис. 76 Создание репозитория

Шаг 7. Вход в учетную запись

Рис. 77 Вход в учетную запись

Шаг 8. Загрузка образов в репозиторий

Рис. 78 Загрузка первого образа

Рис. 79 Загрузка второго образа

Рис. 80 Загруженные теги

Шаг 9. Создание резервной копии контейнера с образом

Рис. 81 Создание резервной копии

Рис. 82 Файл с контейнером

Шаг 10. Установка docker-compose

Рис. 83 Установка docker-compose

Шаг 11. Использование docker-compose для нескольких созданных ранее контейнеров

Рис. 84 Код в docker-compose.yml

Код для docker-composer

version: "3"

services:

apache:

image: php:7.0-apache

container_name: 'yii-php-apache'

restart: 'always'

ports:

- "8080:80"

volumes:

- ./var/www/html

- ./php/php.ini:/usr/local/etc/php/php.ini

- ./sites-enabled:/etc/apache2/sites-enabled

- apache-logs:/var/log/apache2

mysql:

image: mysql

container_name: 'yii-mysql'

restart: 'always'

volumes:

- mysql-data:/var/lib/mysql

environment:

MYSQL_ROOT_PASSWORD: 123

MYSQL_DATABASE: yii

MYSQL_USER: root

MYSQL_PASSWORD: 123

phpmyadmin:

image: phpmyadmin

container_name: 'phpmyadmin'

environment:

PMA_HOST: mysql

PMA_PORT: 3306

ports:

- '3305:3306'

volumes:

apache-logs:

mysql-data:

Соседние файлы в предмете Базы данных