Лабораторна робота №5 Docker Networking
Назва лабораторної роботи: "Налаштування Docker контейнера з мережевими можливостями за допомогою Dockerfile"
Завдання:
1. Створіть новий каталог для лабораторної роботи та перейдіть в нього.
mkdir dockerfile_networking_lab
cd dockerfile_networking_lab
2. Створіть Dockerfile у цьому каталозі для створення Docker образу на базі Alpine.
# Використання базового образу Alpine
FROM alpine
# Встановлення пакетів, необхідних для роботи з мережевими можливостями
RUN apk update && apk add iproute2 curl
3. Додайте команди до Dockerfile для налаштування мережі в контейнері. Наприклад, встановлення IP-адреси та маршрутизації.
# Решта Dockerfile
# Налаштування мережі
RUN ip addr add 192.168.0.2/24 dev eth0
RUN ip route add default via 192.168.0.1
4. Побудуйте Docker образ за допомогою Dockerfile:
docker build -t networking-image .
5. Запустіть контейнер на основі створеного образу та перевірте налаштування мережі:
docker run -it --name networking-container networking-image /bin/sh
У контейнері виконайте команди:
# Перевірка IP-адреси
ip addr show eth0
# Перевірка маршруту за замовчуванням
ip route show
6. Вийдіть із контейнера та зупиніть його:
exit
docker stop networking-container
7. Видаліть контейнер та Docker образ:
docker rm networking-container
docker rmi networking-image
8. Додайте параметри до Dockerfile для передачі аргументів під час побудови образу. Наприклад, додайте аргумент `IP_ADDRESS` для встановлення IP-адреси.
ARG IP_ADDRESS=192.168.0.2
FROM alpine
# Встановлення пакетів та налаштування мережі
RUN apk update && apk add iproute2 curl
RUN ip addr add ${IP_ADDRESS}/24 dev eth0
9. Побудуйте новий Docker образ, використовуючи аргументи:
docker build -t networking-image --build-arg IP_ADDRESS=192.168.1.2 .
10. Після побудови образу переконайтеся, що аргументи були правильно передані та використані у Dockerfile.