Самый простой и минимальный запуск laravel в docker | установка laravel в docker | #10
HTML-код
- Опубликовано: 11 авг 2018
- 🔥 Бесплатные уроки по информационным технологиям
💕Подписывайтесь на канал 👉: bit.ly/2B4zOjq
🙉 Канал в телеграмм: bit.ly/2QcOXD4
☕🍗 Патреон поддержи автора:
/ dkadevelop
- Другие реквизиты на сайте автора:
dka-develop.ru/blog/donation
🔊Описание:
Docker как уменьшить размер image - файловая система UnionFS и layers
--------------------------------------
🌍Официальный сайт:
dka-develop.ru
© Music:
Chris Haugen - Spanish Rose
Triumph - Yung Logos
СПАСИБО ОГРОМНОЕ ЗА УРОК! Просто познавательно и благодаря тебе я стал понимать докер)
Супер видео!!! За такие видео хочется донатить)) Будешь развиваться - однозначно ждет успех, приятно слушать))
Музыка вообще огонь, подняла настроение)
Это самые крутые и понятые видосы по докеру в рунете) очень круто снято. Желаю развитию. На канал подписался.
Класс, удобная структура для организации разработки
Видео снято в 2018, но оно до сих пор одно из лучших видосов по докеру.
Оно было первым в русско-язычном сегменте.
Хочется следующих серий :)@@DKADEVELOP
все. супер. наконец-то. ура. +100 в карму и харизму от меня.
Огромное спасибо за курс ) все четко понятно !)
Спасибо огромное! Это было круто! Я все ролики посмотрел!!!
Все просто шикарно! Продолжайте в том же духе! :)
Только в этом видео уделил внимание фоновой музыке=) Вверяет спокойствие и то что всё получиться=))
Спасибо, очень доступная подача материала
Нужно больше видосиков, очень крутая штука докер!!!!!!!
Огромное спасибо за всю линейку видео по докер! Кратко, четко, ясно и без воды... у тебя реально здорово получается объяснять. Благодаря твоим роликам я влюбился в Docker.
А теперь позволю себе одно дополнение. В Dockerfile для сервиса web я еще заменил document_root, что бы public не вводить, и теперь все совсем как надо.
Спасибо, это отличная новость, обратная связь важна!!!
Большое спасибо за курс. Я наткнулся не просто на табуляцию, а еще и на несоответствие расположения строк и переменных в файле yaml. Не услышал в курсе, что это важно, у меня не строились образы, пока я не привел файл к единообразию в плане отступов. Напишу тут об этом, может, кому то поможет, описание ошибок при запуске сборки не говорило прямо, что именно нужно сделать.
Огромное спасибо за курс )
Не знаю что я сделал - но это было круто! Спасибо! У меня не было ошибки с пользователем в остальном делал все как у тебя
Все отлично работает, были баги токо от версии докера для виндовс но гугл помог. Спасибо большое)
Стоит заметить, что для реалий win 10 папку с проектом docker стоит размещать в папке пользователя (например C:\Users\User1\MyLaravelDocker). Также иногда могут возникнуть проблемы с путями для volumes - мне помог вариант //c/Users/User/MyLaravelDocker/laravel (это папка с ларавел проектом) вместо ./laravel
Дельный совет, респект!
Я добавил еще одну общую папку и так как ты посоветовал прописал путь и все заработало - спасибо!)
Докер на виндовс 🤢🤢🤢
Лайк за труд. Спасибо
Спасибо огромное))
Чувак ты реально круто объясняешь!)
продолжай)
С нетерпением жду следующее видео))
Здравствуйте. Очень хороший курс.
Сюда ещеб добавить настройки апач на директорию public и образ с node.js также чтоб работало подключение стилей и скриптов через mix
Добрый день. Подскажите, когда пробрасываешь директорию в контейнер, как можно изменить пользователя для новых файлов. Новые файлы создаются под root:root. Докер запускаю на osx.
Большое спасибо, все класс!
Крутяк, спасибо большое)))
Спасибо за уроки! А подскажите, как быть с настройкой hostname, как настраивать?
Курс - отличный! Спасибо огромное. Сейчас задонатим
🔥👌 Супер, спасибо!
слушать
Спасибо большое, друг
Автор, спасибо огромное за проеланную работу!!
просьба, можно обьяснить как и где используется Docker in Docker? Спасибо.
отдельно спасибо за музыку на фоне... большое спасибо!
Не всем нравится музыка, поэтому её больше нет в новых выпусках, теперь хоть не пишут "почему нет музыки" 😁
Лайк! Это божественно!
Наконец-то докер хоть немного понят. Добавьте видео, как деплоить на продакшн.
Стюардесса в салоне нового лайнера объявляет о то, что находится в самолете:
- На первой палубе - багаж, на второй - бар, на третьей - поле для гольфа, на четвертой бассейн.
И добавляет:
- А теперь, господа, пристегнитесь. Сейчас со всей этой ***** мы попробуем взлететь.
Подскажите пожалуйста - планируется ли продолжение серий выпусков про докер?
Спасибо!
музыка залипательная :)
подскажи пожалуйста как подключить к своей конфигурации контейнер с ubuntu ? Как правильно настроить docker-copose в связке с образом ubuntu?
Как запускать юнит тесты или вебпак. Есть л возможность работать с терминалом?
Огромное спасибо! Супер уроки! Вот какие нюансы возникли по моей системе (Win 8.1 AMD-A8-5550M):
1. После установки docker спотыкался на проверке VT-X - вылечено переустановкой с драйвером NDIS5-VM, заменой 69 строки скрипта C:\Program Files\Docker Toolbox\start.sh на строчку "${DOCKER_MACHINE}" create -d virtualbox --virtualbox-no-vtx-check $PROXY_ENV "{VM}" , отключение Hypervision через powershell командой bcdedit /set hypervisorlaunchtype off, перезагрузка.
2. Так же потребовалось прописывать пути к локальным директория в таком виде - C:\Projects\dka-test\databases
3. Для корректного создания volumes для базы данных использована команда comand: mysqld --innodb-flush-method=littlesync --innodb-use-native-aio=OFF --log_bin=ON
используй linux
Alex использую, просто вдруг кто как и я застрянет.)
Эпейч - диктор не без чуйства йумора.
Спасибо
Годнота 👍
@DKA_DEVELOP почему у меня после docker run делает мое приложене с провами root? как от этого избавиться
Спасибо за урок. Когда запускаю docker-compose up --build, доходит до сообщения: "docker-dka-blog_composer_1 exited with code 0
" и дальше ничего не происходит. Подскажите, пож-та, что может это быть?
Генерирую ключ, как на 9:45 - пишет что Application key set successfully, но сам ключ не показывает.... Где его искать теперь? Или это связано с тем, что права на все файлы руту принадлежат, а не апачу?
Добрый день, у меня вопрос - а почему я не могу сделать в Dockerfile COPY ${APP_PATH_HOST} ${APP_PATH_CONTAINER}, а потом в docker-compose выполнить command: composer install не создавая Том?? В таком случае он пишет что composer.json не найден. Но я же копирую все в эту папку. Заранее спасибо.
Все контайнера стартуют кроме Db виснит на Added new Master_info '' to hash table, уже все перепробывал удалял контейнера слепки, перестартовывал но без результатно. в чем может быть проблема? если кто сталкивался поделитесь решением.
Мускул 🤣, спасибо за гайд
Снимите видео как настроить разработку фронтенда ларавел с browsersync
Почему-то у меня намного дольше проект собирался, хотя машина мощная. Это от ширины интернет-канала тоже зависит?
Здравствуйте. Ошибка при запуске миграции в созданную базу данных. [Illuminate\Database\QueryException]
could not find driver (SQL: select * from information_schema.t
ables where table_schema = dka_blog and table_name = migration
s)
[PDOException]
could not find driver
Спасибо! Очень полезно!
Спасибо за урок!
А что, если мне нужно будет добавить новые пакеты через composer? Попробовал вписать в composer.json, но пишет nothing install or update
composer require
нужно обращаться к composer находясь в контейнере
ураа ! получилось!
непонятно только, почему мы выполняем php artisan key:generate внутри контейнера web и php artisan migrate внутри контейнера web
но при этом данные базы заполняем в файле .env который у нас локально находится
это получается один и тот же файл, мы его можем редактировать и не входя в контейнер наверно?
как сделать докер компоуз чтоб он для ларавеля запускал еще и миграции?
Видос супер! Но лучше с Nginx+php-fpm7.2 показать пример, ото настряпают тормозных серваков )
+ Я тоже в очереди)
я только ради этого все видосы просмотрел. Ну чтож будем сами мучать
вот тут nginx + php-fpm habr.com/post/346086/
Здравствуйте! Если есть, дайте мануал по настройте Nginx+php-fpm7.2 для новичка
Что делать, если в контейнере в папке /var/www/html все папки и файлы принадлежат root'у, а не www-data/1000 (таймкод - 9:38)?
В убунту есть стандартная команда chown -R www-data:www-data имя_папки, а здесь как правильно поступить чтобы сменить пользователя?
Сейчас
С первого раза вообще ничего не понял.
Потом читал статьи, смотрел другие видео, когда немного стало понятно, снова посмотрел этот курс и тогда уже вся инфа зашла просто супер.
С меня лайк под каждым видео.
Но есть два вопроса:
1) как работать с composer?
когда я захожу в контейнер docker exec -it bash то там composer не работает
2) ларавель проект работает медленно, а именно даже самая мелкая страница открывается 1,2-1,5 сек
тот же самый проект на OpenServer работает намного быстрее 200-250ms
подскажите пожалуйста по этих двух вопросах, очень надо ...
почитал все комменты под этим видео и с композер уже работает, но проблема со скоростью осталась (подскажите кто в курсе что надо сделать)
Здравствуйте! Если есть, дайте мануал по настройте Nginx+php-fpm7.2 для новичка
Спасибо! А где обещанное продолжение? :)
Спасибо большое.
подошло
Правильно ли я понял, если у меня уже стоит OpenServer и composer , то для установки и запуска laravel docer мне не нужен? Я могу обойтись в работе laravel без docer?
Да, правильно, нужно только OpenServer настроить
@@pavelrylsky1887 Что именно настраивать? Версия php, mysql я настроил... вход по дефолту в паблик написал... а что ещё? Кстати, а как на хостинге настроить вход по дефолту в паблик?
А что за текстовый редактор?
Проект из видео:
github.com/dka-develop/dka-blog
Все супер но не хватает docker production. как вообще все это разворачивать и что нужно
возможно для production достаточно будет заменить php.ini.develompent на php.ini.production (хотя это только мои допущения...)
Можете подсказать почему путь начинается с public (11:20 ). Это настройки самого Laravel?
Если да, то почему при запуске через локальный сервер этот путь не отображался ?
Заранее спасибо!
Чтобы убрать public нужно настроить корневую директорию сайта.
Все очень хорошо изложено. Только для меня не понятен один момент. Зачем создавать отдельный каталог для доер файла? если можно просто создать его в этой же директории с названием например php.Dockerfile и в Doker-compose указать так:
web:
build:
context: .
dockerfile: php.Dockerfile
Могут быть и другие настройки, в данном случае может так и можно было бы, но есть разные моменты.
Про сеть Docker будет видео?
ртфм остается
Вот выложил всё в git github.com/Kasper886/docker . Правда после 7 минуты docker-compose up --build проходит, но БД не запускается по порту 6080.
Спасибо. Помог найти ошибку)
Опечатка в репозитории - APPACHE_RUN_USER => APACHE_RUN_USER
@@user-ci9cs5os4h Спасибо за ответ
Как из windows подключиться к Базе данных?
Пробую так: 192.168.99.100:{прокинутый_порт}
Речь идет о подключении через какой-нибудь workbanch.
Ловлю ошибку о невозможности соединения
такая же проблема, по порту 6080 как и у автора выдает "Сайт 192.168.99.100 не позволяет установить соединение."
не знаю как тебя зовут, но ты бы не мог выложить эти файлы а архив и дать возможность скачать его?
а ещё лучше ссылку на GitHub репозиторий или Gist
@@vladimirkamuz или GitLab
Что за музыка ?
Помогите делою все как на видео не получается выдает ошибку No command 'docker-compose' found, did you mean:
Command 'docket-compose' from package 'docker-compose' (universe) docker-compose: command not found
Все очень просто docker-compose не установлен или не до установлен правильно:
docs.docker.com/compose/install/
у меня сыпется куча ошибок
нашел такое объяснение:
Unfortunately, you cannot mount the folder for MariaDB to the host using Docker for Windows because it presents the shared files/folders permissions to the Linux container as root owned with writable only by root (755).
и такой
using a named volume is basically the only option to keep the database files when running MariaDB on Docker for Windows since the host-shared folder presented to the container does not behave in a standard way.
и что с этим делать ? у меня только первые шаги в докере
db_1 | 2019-01-10 23:49:04 0 [ERROR] InnoDB: The Auto-extending innodb_system data file './ibdata1' is of a different size 0 pages than specified in the .cnf file: initial 768 pages, max 0 (relevant if non-zero) pages!
db_1 | 2019-01-10 23:49:04 0 [ERROR] InnoDB: Plugin initialization aborted with error Generic error
db_1 | 2019-01-10 23:49:05 0 [Note] InnoDB: Starting shutdown...
db_1 | 2019-01-10 23:49:05 0 [ERROR] Plugin 'InnoDB' init function returned error.
db_1 | 2019-01-10 23:49:05 0 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
db_1 | 2019-01-10 23:49:05 0 [Note] Plugin 'FEEDBACK' is disabled.
db_1 | 2019-01-10 23:49:05 0 [ERROR] Could not open mysql.plugin table. Some plugins may be not loaded
db_1 | 2019-01-10 23:49:05 0 [ERROR] Unknown/unsupported storage engine: InnoDB
db_1 | 2019-01-10 23:49:05 0 [ERROR] Aborting
Composer could not find a composer.json file in /var/www/html ошибка. Ничего не работает
почему composer нельзя поставить в контейнере с php, а добавляется отдельным сервисом ?
Не уверен, но видимо для того что бы можно было свободно менять их версии в случае необходимости. И еще что-то про docker way
а не проще развернуть сервер nginx выполнив пару команд?
видел в других конфигах в файле docker-compose.yml
пишут link, depends_on для связывания сервисов
и говорят что без этого работать не будет,
здесь же этих команд нет и все работает,
объясните плиз кто понимает
link это просто создание дополнительного алиаса для доступа на другой сервис. Ну а по дефолту они обращаются по имени сервиса. А depends_on для правильной очередности запуска чтобы зависимый сервис запускался после запуска сервиса его зависимости.
жду видео о том как развернуть freepbx внутри docker
еще хотелось бы чтобы рассказал про alpane
раньше использовал вот этот образ hub.docker.com/r/lluisyast/freepbx/
но потом он поломался
сейчас нацелен в ближайшем будущем создать свой образ
основываясь на инструкции по установке от сюда wiki.freepbx.org/display/FOP/Version+14.0+Installation
еще нашел такой образ
только не понятно каким образом его запускать hub.docker.com/r/tiredofit/freepbx/#installation
может быть по asterisk запишешь уроки, было бы интересно
когда я хочу зайти в database у меня вот что Operation timed out
Ссылка на гит к исходному коду...
У меня какой-то глюк, adminer пытается 2 раза сподряд стартовать, первый занимает порт и второй выдает ошибку. Никто не сталкивался? Потом я в docker-composer.yml меняю порт для adminer и запускается нормально. Как пофиксить?
Если такая же ошибка - driver failed programming external connectivity on endpoint failed: 6080 port is already allocated
. Попробуйте выполнить:
sudo lsof -i -P -n | grep 6080
- взял первое 4х знач число
sudo kill 'первое 4х знач число'
Далее:
systemctl restart docker
те кто получит ошибку на этапе artisan key:generate, выполните "cp .env.example .env" перед ним
Вы наверное пропустили, потому что автор видео сделал это (вручную)
Почему-то содержимое директории проекта не копируется в /var/www/html
То есть у меня в .env так:
DB_PATH_HOST=./databases
APP_PATH_HOST=./project-folder
APP_PATH_CONTAINER=/var/www/html/
в папке project-folder есть файл index.php с hello world, после билда, если сделать docker-compose exec web bash, и посмотреть ls, то директория пустая, а должен быть виден файл index.php из project-folder
Возможно это как-то связано с виндой и директорию APP_PATH_HOST нужно указывать не через точку.
Подскажите кто сталкивался?
там вроде выше в комментах писали что нужно полный путь к твоему проекту прописать - с:/...
то что сказал Кат + еще надо устанавливать в папку самого докера ~/docker/project-name
Ну почему нельзя файл с конфигом выложить !
Я за 15 минут это все написал. В чем сложность?
Было бы лучше если выложили ссылку в гит
Хоть у меня и вышла черепаха,
но я смог всё настроить как надо!
Нос в нос с действующим разделом БД!
ГоДнотА!
Я наверное туплю, но не пойму почему команда composer не работает внутри контейнера web? (docker-compose exec web bash).
composer:
image: composer:1.7
volumes:
- ${APP_PATH_HOST}:${APP_PATH_CONTAINER}
working_dir: ${APP_PATH_CONTAINER}
command: composer install
Он все устанавливает, но достучаться потом до него нельзя. Я конечно решила этот вопрос добавив в Dockerfile команду:
RUN COMPOSER_HOME=/usr/local/composer curl -sS --getcomposer.org/installer-- | php -- --install-dir=/usr/local/bin --filename=composer
Но я саму логику не пойму - композер установлен, даже установил папку vendor, значит доступ в мой web у него есть...
Подскажи - можно ли как-то это сделать через image?
Спасибо)
Прошу прощения иногда нет времени отвечать на вопросы. Потому composer'a в контейнере web нету, он есть только в контейнере composer. Это как два компьютера, на одном установлена программа, а на другом нет, но с одного компьютера мы можем зайти в папку другого компьютера (через share общий доступ) и запустить там то что нам нужно используя компьютер на котором этот софт есть.
Если добавить строку которую Вы указали, то композер работает (спасибо кстати), но зачем тогда подключать образ composer, если и без него работает
Вообще то конфиг не верный, в laravel папка public должна быть точкой входа, она не должна быть в url адресе и допиливать её в htaccess тоже не правильно. Подскажи как поменять путь www/html на www/public
а етот докер можно ли поставить на виртуалку ? чтоб из винды можно было запустить убунту с докером
win7 - ты кажется по другому и не поставишь. win10 - там можно так фигануть. А еще у тебя вопрос странный и непонятный что спросить хотел.
я ток не пойму почему так медленно запросы идут к серваку, переход со страницы на стр. 5-10 с занимает
Похоже вы не на линуксе. Запросу нужно время пока из, например, винды в линукс и наоборот пройдёт. Если у вас винда установите проект полностью в папке wsl2, так вы будете работать прямо из линукса. В проводнике наберите \\wsl$\ и попадете в линукс. Можно и через терминал
Надо бы шрифт покрупень
Ролики отличные. Но это уже конец?
Возможно нет 😁
Win10 + dpcker (WSL2)
Ну не хочет оно инсталить ни a2enmod ни rewrite, на этом и тормознул
кто может объяснить почему так
Круто! Можеш розповісти про ONBUILD будь ласка
Доброго, нужно будет ещё много чего рассмотреть и это не исключение 👌
You don't have permission to access this resource. Хотя поменял значение на #1000
при запуске команды
docker-compose up --build
зависает на
....
db_1 | 2020-09-14 10:46:28 0 [Note] InnoDB: Buffer pool(s) load completed at 200914 10:46:28
db_1 | 2020-09-14 10:46:28 0 [Note] Plugin 'FEEDBACK' is disabled.
db_1 | 2020-09-14 10:46:28 0 [Note] Server socket created on IP: '::'.
db_1 | 2020-09-14 10:46:28 0 [Warning] 'proxies_priv' entry '@% root@1cfdeff72a59' ignored in --skip-name-resolve mode.
db_1 | 2020-09-14 10:46:28 0 [Note] Reading of all Master_info entries succeeded
db_1 | 2020-09-14 10:46:28 0 [Note] Added new Master_info '' to hash table
и дальше не идет
не могу войти в adminer
SQLSTATE[HY000] [1045] Access denied for user 'root'@'172.25.0.5' (using password: YES)
Как решили проблему?
ну почему не nginx