«Бродяжництво» з Бітрікс — віртуальна машина

30 Липня 2019

наступна стаття
Олександр Борис

Backend developer

Олександр Борис
«Бродяжництво» з Бітрікс — віртуальна машина

У своїй роботі багато розробників вже пробували використовувати «Vagrant» (дослівно «Бродяга», англ.) — відкритий інструментарій для спрощення формування, встановлення та управління образами віртуальних машин при вирішенні задач розробки і тестування проектів з використанням різних систем віртуалізації. А якщо не пробували, тоді після прочитання статті Ви точно захочете. Я в цьому впевнений, оскільки якщо коротко — це спрощує життя! За допомогою Vagrant швидко, просто і зручно створити або розгорнути який-небудь проект Бітрікс24 (і не тільки) без допомоги системного адміністратора. А ще це доступно для будь-якої платформи, чи то iOS, Windows або Linux. Цікаво? Тоді погнали поневірятись!

Почнемо користуватися сервісом

Для роботи нам потрібно:

Функціонує все це за допомогою простих команд Vagrant. Для новачків буде корисно зробити для себе закладку на сторінці Vagrant.

Для демонстрації я використовую OS Linux.

Створюємо «Бродягу» Бітрікс24

Перевіряємо версію Vagrant:

$ vagrant -v //Vagrant 2.2.4

Створюємо теку для Бродяги

$ mkdir ~/vagrant
$ cd ~/vagrant

Ініціалізуємо теку

$ vagrant init

'Vagrantfile` був поміщений в цей каталог. Vagrant зараз готовий «мандрувати» по вашому першому віртуальному середовищу, але нам потрібно дещо трохи підлаштувати .

В хмарі Vagrant є вже готова віртуальна машина Ubuntu для Бітрікс24:

avivi_pro/ub16_bx

Дана машина вміщає в себе:

  • Git 2.7.4
  • Apache 2.4.18 (works with HTTPS)
  • MariaDB 10.3.14 (user: root pass: root)
  • PHP 7.2.16 w/ XDebug & VLD
  • Composer 1.8.0
  • Node 11.6.0
  • NPM 6.5.0
  • Bitrix (bitrixsetup.php)

Круто, чи не так? Тепер Вам не потрібно нічого налаштовувати з нуля, встановлювати пакети. «Все в коробці», як то кажуть. Тут мінімальний набір найнеобхіднішого. За бажанням можна і що-небудь довстановити, звичайно.

Далі редагуємо згенерований файл `Vagrantfile`

$ nano Vagrantfile

Замінюємо весь вміст на Рекомендовані налаштування і зберігаємо

$mach_quant = 3
Vagrant.configure("2") do |config|
config.vm.provider "virtualbox" do |vb|
vb.gui = false
vb.memory=1024
vb.cpus=1
config.ssh.username = 'vagrant'
config.ssh.password = 'vagrant'
config.ssh.insert_key = 'true'
vb.check_guest_additions=false
config.vm.box_check_update=false
config.vm.box="avivi_pro/ub16_bx"
config.vm.network "forwarded_port", guest: 80, host: 9999, auto_correct: true
config.vm.network "forwarded_port", guest: 443, host: 9443, auto_correct: true
config.vm.synced_folder ".", "/var/www/html"
end
(1..$mach_quant).each do |i|
config.vm.define "bx#{i}" do |bx|
bx.vm.network "private_network", ip: "192.168.100.#{100+i}"
bx.vm.network "public_network", ip: "192.168.1.#{0+i}", bridge: "wlp3s0"
bx.vm.hostname="bx#{i}"
end
end
end

Розберемо основне з цього коду:

Кількість машин

$mach_quant = 3

Налаштування користувача віртуальної машини

config.ssh.username = 'vagrant'
config.ssh.password = 'vagrant'

Тека для синхронізації з вашим комп'ютером

config.vm.synced_folder "[your_folder]", "/var/www/html"

IP хоста

vm.network "private_network", ip: "[your_ip]"

IP локальне і міст для доступу до віртуалки

vm.network "public_network", ip: "[your_local_ip]", bridge: "[your_adapter]"

(Подивитися міст можна за допомогою команди ifconfig або ip addr. Рекомендується використовувати пристрій, який має вихід в інтернет)

Можете змінити налаштування під себе.

Якщо всі налаштування правильні, запускаємо Бродягу:

$ vagrant up
В результате мы имеем 3 готових платформи для рботи
$ vagrant box list

В результаті ми маємо 3 готові платформа для роботи:

 #     Name         Hosts ip
    Hostname   
    1      bx1      192.168.100.101         bx1
    2      bx2      192.168.100.102         bx2
    3      bx3      192.168.100.103         bx3

Ознайомитися з іншими командами можна за допомогою

$ vagrant -h

Тепер вбиваємо в браузері https://192.168.100.101 і нам завантажується стандартний bitrixsetup. От і все. Ура! :)

Це лише початок «поневірянь»

Зв'яжемося по ssh з однією з машин.

$ vagrant ssh bx1

Можна перейти до / var / www / html (по рекомендованим налаштуванням) і використовувати дану машину для розгортання будь-якого іншого проекту і налаштування усього, що Ви хочете. 

Ваш «Бродяга» ідеально підходить для установки і роботи з коробковим (локальним) Бітрікс24. Будь ти адміністратор, менеджер чи програміст — працювати дуже зручно. Підтримка віртуальною машиною протоколу HTTPS дозволяє розробникам використовувати всі можливості API і інтегрувати сайти з CRM. Я перевірив, далі справа за Вами!

Спробуйте встановити будь-яке програмне забезпечення поверх нього.

Ну як, сподобалося? Користуйтеся на здоров'я! ;)

banner_ukr.png


Схожі статті
Записатись на консультацію

Ми зв'яжемось з Вами протягом 10 хвилин