Написать и запомнить легче чем просто запомнить. По сути я начал пользоваться докером и Laradock в момент начала написания этой статьи. Сюда я собирал все ответы на все вопросы, которые появлялись у меня в процессе работы с новым для себя инструментом — Laradock. Да, здесь много переписывания и перевода документации, мне просто было легче запомнить и отфильтровать нужные команды в своей статье.
Я больше не использую Laradock
Laradock — замечательный инструмент для работы над laravel проектами, но в новой версии Laravel был представлен Laravel Sail, который делает ровным счетом все то-же самое, что и laradock и так-же основан на docker. Эта заметка была долгое время закрыта для пользователей, потому как я считал ее не особо нужной. Сейчас решил подчистить заметки, может кому пригодится…
Какие контейнеры мне нужны?
На большинстве проектов достаточно контейнеров nginx & mysql. Для дополнительного удобства добавим интерфейс phpmyadmin (Я так привык пользоваться Sequel Pro, но он не работает с MySQL 8)
docker-compose up -d nginx mysql phpmyadmin
Как остановить контейнеры?
Можно остановить как один контейнер, так и все одной командой
Для остановки одного контейнера (mysql — название контейнера):
docker-compose stop mysql
Все контейнеры можно остановить при помощи:
docker-compose stop
Как собрать контейнер
Собирать контейнеры нужно каждый раз, когда было внесено изменение в его конфигурацию. К примеру, была изменена версия mysql в файле .env. Для выполнения сборки нужно остановить, пересобрать и запустить контейнер, а сборка выполняется командой
docker-compose up -d mysql
Как открыть phpmyadmin в laradock
Для открытия phpmyadmin в laradock достаточно запустить контейнер mysql и phpmyadmin, после этого интерфейс http://localhost:8081/
Как подключится к Sequel Pro в laradock
В настоящие момент (конец 2020), стабильная версия Sequel Pro не имеет возможности подключаться к mysql 8 (По крайней мере так пишут в интернетах, но версия 5.7 может легко с ней работать). Если версия MySQL для Вас не так приоритетна как работа с Sequel Pro, можно сменить конфиг (.env в laradock) по части конфигурации MySQL на такой
MYSQL_VERSION=5.7
И пересобрать образ mysql
docker-compose build mysql
В случае, когда подключение по прежнему не доступно, следует убедится в том, что порты в файле docker-compose.yml имею вид:
ports:
- "3306:3306"
Как войти в окружение
docker-compose exec workspace bash
Как сменить версию PHP в laradock
Для смены версии php редактируем файл .env, указывая нужную версию php:
PHP_VERSION=7.3
После чего пересобираем образы php-fpm и workspace
docker-compose build php-fpm
docker-compose build workspace
Как добавить deployer
- Открываем .env файл;
- Находим строчку WORKSPACE_INSTALL_DEPLOYER;
- Устанавливаем значение в true
- Пересобираем контйнер workspace
docker-compose build workspace
Как поменять конфигурацию php
Пользовательская конфигурация находится в файле laradock/php-fpm/laravel.ini
Откройте файл, внесите в него свои параметры и сохраните. После этого нужно пересоздать контейнер
docker-compose up -d --force-recreate --build php-fpm