/Inception

Primary LanguageShell

Inception

Mandatory

  1. Создание виртуальной машины

Образ Ubuntu stable и его настройка через VirtualBox. Рекомендую настраивать разрешение через саму систему, а не через scale VB.

  1. Устновка необходимых программ

Например, vim и make

$ sudo apt-get install vim
$ sudo apt-get install make
  1. (Опционально) Подключаем SSH

В первую очередь проверить, установлени и запущени ли ssh на виртуальной машине: sudo systemctl status ssh, если нет устанавливаем

$ sudo apt-get update
$ sudo apt install openssh-server

В файле /etc/ssh/sshd_config ищем строку #Port 22, раскомментируем и меняем, например, на Port 4242

Узнаем ip виртуальной машины и порт (обычно 10.0.2.15 и порт 22) командой ip addr img3

Заходим в настройки виртуальной машины Сеть -> Проброс портов и создаем новое соединение как на картинке img1 img2

Перезапускаем сервис: $ sudo service ssh restart

Подключаемся через терминал с локальной машины: $ ssh your_username@localhost -p 4242

Для подключения Visual Studio Code к виртуальной машине запустите виртуальную машину. Откройте Visual Studio Code на основной ОС. Слева на панели VS Code выберите Extensions (Расширения) и найдите и скачайте расширение "Remote - SSH". Затем в VS Code откройте меню с помощью сочетания клавиш Command+Shift+P, введите "Remote-SSH: Connect to Host..." и нажмите Enter. Там же введите <your_login>@localhost:<your_port>, затем введите пароль пользователя виртуальной машины, откройте необходимую папку через Explorer->Open Folder слева на панели VS Code, снова введите пароль пользователя виртуальной машины и создайте новый терминал

Подробнее

  1. Изменяем хосты

Открываем с правами админа /etc/hosts и меняем localhost на 'username'.42.fr

example: sudo vim /etc/hosts
  1. Установка Docker

Достаточно первого шага.

  1. Установка Docker Compose

  2. Создаем Makefile

Для удобства делаем запуск, остановку и очистку всего.

В директории srcs создаем docker-compose.yml

Хороший разбор

Создаем необходимые директории

mkdir -p /home/${USER}/Desktop/data/db
mkdir -p /home/${USER}/Desktop/data/wp
  1. Настраиваем блок с nginx

Офицальныая дока с докерхаба Более подробно

Настраиваем скрипт для ssl-шифрования по этой инструкции

Для перенаправления данных исползуем настройки FastCGI для PHP FPM

Не забываем добавлять .dockerignore для игнорирования файлов во время сборки

  • Создаем конфигурационный файл
  • Создаем базу данных на основе wordpress
  • host_name должен быть либо %, либо Вы должны задать его принудительно и использовать его имя.
  • Создаем конфигурационный файл пула www.conf (Пример), который позволяет запускать несколько дочерних процесов в разными конфигурациями
  • Создаем конфигруационный файл wordPress (wp-config.php). Не забываем сгенерировать свои ключи отсюда.
  • По сабжекту нужно создать двух пользователей, один из которых админ, при этом, имя админа не должно быть andmin, andmin-123 etc (WTF!?).

Bonus

  1. Устанавливаем Redis

1.1 Добавляем сервис в docker-compose 1.2 Пишем скрипт в папку tools 1.3 Настраиваем Dockerfile

  1. FTP-server

  2. Your site


Полезные ссылки