Найшвидша інсталяція Docker і Portainer у Proxmox VE

Цей посібник охоплює установку Docker на сервері Proxmox VE, зосереджуючи увагу на ключових кроках, таких як налаштування статичної IP-адреси та створення резервних копій. Він призначений для початківців і досвідчених користувачів, щоб спростити процес налаштування контейнеризованих застосунків.

Найшвидша інсталяція Docker і  Portainer у Proxmox VE
Photo by Ian Taylor / Unsplash

Вступ

Вітаю. Давайте назвемо це основою основ, бо вбачаю, що не раз буду давати посилання саме на цю інструкцію.

Віртуалізація і контейнеризація пляшуть бік о бік у #хоумлаббінгу. І я постійно бачу як у практичних задачах все це тісно пересікається між собою.

Для зручності розуміння малюю вам діаграмку, у якій видно, що у Proxmox VE треба створити Linux контейнер (LXC) з Docker, а вже внтурі запустити контейнер з Portainer

Якби ми йшли повністю мануально і покроково, то це зайняло б більше часу, але я проведу вас короткою стежкою, так що займате зручні місця. Ми починаємо.

Інсталяція

Для інсталяції нам не потрібно нічого окрім самого сервера Proxmox VE, на якому буде відбуватись все. Також ми використаємо один з Proxmox VE Helper-Scripts, а саме Docker LXC: https://tteck.github.io/Proxmox/#docker-lxc

В загальному ми вже знайомились з Proxmox VE Helper-Scripts в цій статті, де був швидкий огляд існуючих скриптів. Раджу зазирнути.

Скрипти-помічники для Proxmox
Вступ Привіт. Хочу поділитись з вами дуже корисним ресурсом, який мені допоміг на самому початку знайомства з Proxmox VE. Proxmox VE Helper-ScriptsScripts for Streamlining Your Homelab with Proxmox VEProxmox VE Helper-Scriptstteck Заздалегідь хочу подякуват автору https://github.com/tteck, який нещодавно оновив дизайн ресурсу та продовжує підтримку та розозробку, додаючи

Крок 1. Відкриваємо Shell в Proxmox VE

Крок 2. Копіюємо команду і виконуємов в Shell

В окремому вікні відкрийте це помилання https://tteck.github.io/Proxmox/#docker-lxc і скопіюйте команду для інсталяції Docker LXC як на зображені нижче.

Вставте в Shell та виконайте її. Вона автоматично запустить діалог. Одразу ж погоджуємось, що ми хочемо створити новий Docker LXC.

Поради

Хочу залишити поради які я писав у статті про скрипти помічники, бо вважаю їх тут доречними, особливо якщо ви робити ці кроки вперше.

Момент очікування є дуже важливим в цьому процесі. Не закривате вкладку в браузері та навіть не переходьте на інші панелі в інтерфейсі Proxmox. Перехід на іншу сторінку прериває Shell і всі команди які там працювали - тобто здійснюється вихід із програми скрипта
Також не рідкість, що виконання скрипта може підвиснути, тому інколи доводиться навіть перезапускати сервер Proxmox, але все ж не спішіть та дайте достатньо часу
🌐
Впевніться, що сервер має підключення до мережі інтернет. Скрипт запускає набір команд описаних у файлах на Github, які в свою чергу можуть також потребувати підкачку інших ресурсів.
💡
Не бійтеся помилок. Особливо це стосується налаштувань. Proxmox для того і створений, що будь-який контейнер ви можете замінити за лічені хвилини. Сміливо видаляйте "неправильний" контейнер та запускайте скрипти по новій.

Крок 3. Обираємо стандартні налаштування

Автоматично будуть застосовані наступні налатування: 2GB RAM - 4GB Storage - 2vCPU

Кількість ядер та оперативної памʼяті ви зможете змінити пізніше, а от щоб збільшити місце на диску, то прийдеться поградитись.

Advanced режим запустить опитування щодо багатьох парментрів налаштування нового контейнера. Але це сладніше і довше. Можете обрати Advanced режим лише за наявності впевненості у своїх діях

Крок 4. Чекаємо завершення і підтверджуємо необхідність Portainer та Docker Compose

На фото нижче можете спостерігати як відображатиметься процес інсталяції. Це займе трохи часу, але не відволікайтесь далеко, бо від вас буде необхідно спочатку підтвердження на інсталяцію Portainer, а перегодом і Docker Compose

Зверніть увагу, що при повністю автоматиній установці параметри мережі були зведені до використання DHCP. Тобто у вас не буде статичної IP адреси. Але ми це виправимо пізніше.

Проте в консолі ви всеодно побачите поточну IP адресу, як от 192.168.10.136 у моєму прикладі

Під час інсталяції процес буде зупинено двічі і він потребуватиме від вас ввести "y" та натиснути Enter. Дивіться на рядки білого кольору.

Крок 5. Налаштування статичної IP адреси (опціонально)

Щоб в подальшому прості знаходити свій новий сервер я рекомендую задати статичну IP адресу в мережевих налаштування LXC контейнера через інтерфейс Proxmox VE.

Звісно є багато інших способів, як от зробити це в налаштуваннях роутера, або ж задати на рівні вашої UNIX системи (Debian в нашому випадку), проте найшвидшим і напростішим для розуміння, та мабуть найзручнішим завжди буде налаштування самого контейнера. Маючи багато контейнерів буде просто відслідкувати який з них знаходиться на якій адресі просто дивлячісь в мережеві налаштування.

Крок 6. Перевірте доступність вашого Portainer

У попередньому кроці я встановив статичну IP адресу 192.168.10.140, а також нам знадобиться порт 9443, на якому Portainer запущений. В результаті маємо: https://192.168.10.140:9443/ . У вашому випадку в налаштуванях мережи адреса може бути інша, використовуйте свою.

І ось що ми маємо побачити. Це стартовий екран Portainer і нам цього достатньо, щоб зрозуміти, що все працює. Рекомендую не вводити пароль, а одразу перейти до наступного кроку і зробити резервну копію.

Крок 7. Зробіть резервну копію (опціонально)

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

Детальніше дізнатись про те, як налаштувати Proxmox Backup Server зі збереження файлів на Synology NFS можна у окремій статті:

Proxmox Backup Server та Synology NFS
Вступ І так під час роботи з Proxmox і по мірі зростання кількості контейнерів і віртуальних машин, які почали приносити мені користь, постала проблема резервного копіювання. І Proxmox був підготовлений в цьому питанні. Він має свій власний продукт який гарно інтегрується в Proxmox VE - це Proxmox Backup Server (PBS)

Перший вхід

Після успішної інсталяції знову заходмо на Web UI вашого Portainer https://192.168.10.140:9443/ (з кроку 6) і вказуємо пароль для адміністратора. Після чого маєте побачити ось такий інтерфейс.

Після запуску декількох контейнерів ви бочите щось подібне, де в переліку одним з контейнерів і буде той самий Portainer, бо він так само запускається в Docker, як і усі інші.

Висновки

Процес інсталяції має зайняти до 15 хвилин в цілому. Ми максимально спростили вам кількість кроків, якщо вашою ціллю є запуск Docker на сервері Proxmox VE для певних задач.

Для досвідчених користувачів, я звісно ж рекомендую обирати Advanced режим налаштування і вказувати необхідні вам параметри під конкретні задачі. Або і взагалі можна відмовитись від таких скриптів і пройти весь шлях від налаштування OS до інсталяції Docker, Portainer та Docker Compose в ручному режими, що займе трохи більше часу, але дась більше контролю за процесом.

Успішно налаштований Portainer доступен на порту 9443 (https). Його можливості заслуговують окремої історії, а у цій статті ми досягли поставленої мети з мінімальними витратами часу і зусиль.


Два опціональні кроки на етапі інсталяції є особстою рекомендацією від мене на основі досвіду. Статична адреса завжди буде мати більше сенсу для домашньої мережі, особливо коли вам потрібно постійно звертатись до сервісів. А резервна копія щойно налаштованого контейнера збереже ваш час у разі помилок, або коли треба буде повторити процес.

Read more