За материал благодарность Сергею (@s_s_n_e_g) и Юрию (@themaritime)
Разверни нужную часть гайда:
Общая информация
1. Виртуальная машина - это эмуляция другого компьютера, которая запущена на вашем компьютере. Например, можно запустить виртуалку, на которую установлена Windows XP + IE6 и тестировать, как в ней работают курсы. Или поставить там стремный левый софт, чтобы потом уничтожить целиком вместе с виртуалкой, а не вычищать из своей системы.
2. Сервер - это программа, которая умеет получать и отдавать какие-то данные по запросу.
2.1. Веб-сервер умеет получать запросы вида “покажи мне HTML файл” из браузера и отдавать этот HTML-файл в браузер. Популярный вебсервер называется apache. Файлы он обычно ищет в папочке рядом с собой.
2.2. Сервер базы данных умеет получать запросы вида “запиши/прочитай эту строчку в базе” и, соответственно, писать/читать строчку в базе.
База - это например просто файл на вашем компьютере. Или таблица в гуглдоках. Или сложная файловая система, оптимизированная для скорости и надежности хранения данных. Популярный сервер БД - MySQL.
2.3. Сервер языка программирования умеет получать команды, записанные на этом языке и выполнять действия. Например, “запиши файл на диск (готово!)”, “сложи 2 + 8 (10!)”, “распознай, а не котик ли на этой картинке (на 97% котик!)”. Популярный сервер языков программирования - это PHP.
3. Втроем эти ребята умеют всё, что умеет веб вокруг нас. Как работает Вконтакте? Вы вбиваете в браузер адрес “vk.com”, который автоматически превращается во что-то типа “vkontakte.ru/stena.php?skip_fsb_check”.
Вебсервер видит запрос “покажи мне файл stena.php”, видит, что это PHP, тыкает в бок php-сервер: “чо там?”
php-сервер читает файл stena.php, в котором есть несколько команд типа “посмотри в базе данных, что там написали дружки этого Васи”. Сервер php обращается к базе данных: “Эй, чо там они писали-то?”
База выдает содержимое записей, php-сервер их оборачивает в html-тэги, вебсервер показывает тексты и подтягивает картинки. Жучка за кошку, кошка за мышку, ваш рабочий день проходит с пользой.
4. Обычно все эти серверы работают на компьютере, который включен 24 часа в сутки и подключен к интернету толстым кабелем. Для удобства (нет) этот компьютер тоже называется сервер.
4.1. Если вы хотите развернуть свой Вконтакт с преферансом и поэтессами, вы можете запустить все эти серверы на своей машине. Ну или не Вконтакт, а Adapt.
5. Чтобы запустить Адапт, вам надо:
5.1. Скачать и проинсталлировать Node.js. Это одновременно А) веб-сервер, как apache или nginx и Б) сервер языка программирования JavaScript. Т.е. он умеет исполнять команды, создавать веб-страницы, читать картинки с диска и показывать их в браузере.
5.2. чего не хватает для святой троицы? Правильно, базы данных. Когда вы скачаете и запустите инсталляцию Adapt (а она запускается как раз на node.js), вам скачается и установится сервер MongoDB. Вуаля. Ваш компьютер теперь - это сервер, и вы можете делать курсы, заходя на “сайт” localhost:3000/adapt. Даже ваши друзья смогут туда зайти. Только компьютер не выключайте.
6. Другой пример. Вы хотите на своем компьютере запустить Moodle. Для этого вам по-прежнему понадобятся: веб-сервер, php-сервер, БД-сервер. У вас есть несколько вариантов:
6.1. скачать и установить каждый по отдельности, потом скачать Moodle в папку Moodle и зайти на localhost:3000/moodle
6.2. скачать XAMPP - это одна программа, которая сразу запустит все серверы и создаст на десктопе иконки вида “все три сервера запустить” и “все три сервера остановить”, очень удобно. Аналогов XAMPP полно. Точно также вы сможете скачать файлы Moodle с сайта Moodle, положить в папочку Moodle и зайти на локалхост в Moodle.
Резюме
Чтобы установить у себя Adapt или Moodle или Wordpress и т.п., вам НЕ НУЖНА виртуальная машина. Не гуглите “скачать виртуальную машину”, не качайте virtualbox или что еще.
Установка на win 10
- Скачай и установи LTS версию Node.js
- Скачай Adapt c GitHub
- Распаковывай в любую папку архив с Adapt
- Открывай папку и в адресной строке вызови консоль с помощью команды «cmd»
- В консоли прописываем
npm install --production
После установки консоль будет ждать вашей команды снова с путем в папку Adapt
Обрати внимание, чтобы путь в командной строке был в твою папку с Adapt.
- Качаем Git и устанавливаем
- Запускаем git bash и устанавливаем Grunt командой
npm install -g grunt-cli
- Устанавливаем MongoDB
- Возвращаемся в нашу консоль и запускаем установку Adapt командой
node install
Будет много вопросов. На все отвечаем кнопкой «Enter». В конце вводим свою почту и пароль.
- Если все успешно в конце получишь зеленую строку Installation completed successfully, the application can now be started with 'node server'.,
- Запускай сервер командой
node server
- Заходи в браузере на http://localhost:5000/, используй ранее указанную почту и пароль для входа
Установка на mac
- Устанавливаем Node.JS c вебсайта.
- Скачиваем архив последней версии MongoDB с вебсайта
- Архив распаковать в папку Documents; переименовать в “mongodb”.
- Настраиваем MongoDB через терминал:
sudo mkdir /data sudo mkdir /data/db sudo chmod 777 /data/db
- Открываем папку mongodb через finder. Открываем папку bin в терминале. Выполняем команду
./mongod
Терминал с MongoDB должен оставаться запущенным. Впоследствии, когда запускаем сервер, после перезагрузки системы к примеру - монго по новой запускать уже не надо.
- Проверяем установлен ли GIT и если нет, то устанавливаем через терминал. Открываем папку Documents через терминал. Выполняем команды:
git
Если не установлен – выйдет сообщение о необходимой установке command line developer tools (xcode) – соглашаемся и устанавливаем софт; если xcode был установлен, то git должен работать.
- Проверяем git версию командой:
git --version
- Устанавливаем Grunt через терминал (Находимся в той же папке Documents). Команды:
sudo npm install -g grunt-cli sudo npm install -g adapt-cli
- Клонируем Adapt Tool через терминал (Находимся в той же папке Documents). Команда:
git clone
https://github.com/adaptlearning/adapt_authoring.git
- Устанавливаем ADAPT (открыть папку “adapt/adapt_authoring” в терминале). Команды:
npm install --production node install
- Нажимаем ENTER на каждом вопросе во время установки. В конце установки необходимо задать емейл и пароль для уч.записи Суперадмина.
- Если установка прошла успешна – в терминале зеленым цветом вам сообщат об этом. Остаемся в этом же терминале. Выполняем команду:
node server
- Открываем в браузере: localhost:5000
Установка на Linux
OS: UBUNTU 18.04 (20.04)
- Установка GIT
$ sudo apt update $ sudo apt install git $ git --version
- Установка Node.js
$ curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash -
$ sudo apt install nodejs $ node --version $ npm --version
- Установка Mongo DB
$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4 $ sudo add-apt-repository 'deb [arch=amd64] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 multiverse' $ sudo apt update $ sudo apt install mongodb-org $ sudo systemctl start mongod $ sudo systemctl enable mongod
- Проверка БД:
$ mongo --eval 'db.runCommand({ connectionStatus: 1 })'
На выходе должно показать:
MongoDB shell version v4.0.10 connecting to: mongodb://127.0.0.1:27017 MongoDB server version: 4.0.10 { "authInfo" : { "authenticatedUsers" : [ ], "authenticatedUserRoles" : [ ] }, "ok" : 1 }
Конфигурация БД (необязательно): отредактировать файл через VIM или nano (снять коммент с security и добавить строку авторизации):
$ sudo nano /etc/mongod.conf security: authorization: enabled $ sudo systemctl restart mongod
- Добавление админа БД:
$ mongo use admin db.createUser( { user: "ИМЯ ЮЗЕРА", pwd: "ПАРОЛЬ", roles: [ { role: "userAdminAnyDatabase", db: "admin" } ] } ) quit()
- Через файловый менеджер создай папку в том месте, где планируется проект (например, в Documents: /Documents/Adapt). Затем открой ее в терминале.
- В созданную папку клонируй скрипт установки
$ git clone https://github.com/adaptlearning/adapt_authoring.git
- Открой поддиректорию adapt_authoring в терминале и выполни следующие команды:
$ sudo npm install -g grunt-cli $ npm install --production $ node install
- Запустится установка adapt. В терминале появятся вопросы - на все отвечай по умолчанию нажатием Enter.
- В конце установки терминал запросит почту и пароль. Впиши свои данные. Они нужны для авторизации в адапте.
- Запусти сервер node
$ node server
- Открыть браузер и набрать в адресной строке localhost:5000. Для входа юзай свой логин и пароль.