Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 Laravel 5 » Улучшить качество загружаемой картинки laravel-image-optimizer-ом » 21.06.2019 17:45:50

mstdmstd
Ответов: 2

Всем привет,
установил пакет
https://github.com/spatie/laravel-image-optimizer
и в настройке этого пакета установил :

Jpegoptim::class => [
            '-m100',

макс качество
полагаю что в админке при загрузки картинки, будет полезно улучшить качество этой картинки.
Нагуглил несколько картинок с явно неважным качеством - но обработав их этим пакетов не вижу улучшения в сгенерированной картинке...
Или картинки нашел неудачно или еще что-то ...
Не расшарите несколько картинок неважного качества, от которых можно было ожидать улучшения применив этот плагин ?

Спасибо!

#2 Re: Laravel 5 » Можно из консоли запустить контрол который выводит отчет? » 24.05.2019 18:33:46

Наверно, проблема в том, что в браузере зайти на /admin/report/available-spaces-by-zones/send-email-on-open
может только залонившейся в систему юзер? Можно ли из консоли запустить такой урл?
Или надо переделать на урл без ограничения доступа?

#3 Laravel 5 » Можно из консоли запустить контрол который выводит отчет? » 24.05.2019 10:42:08

mstdmstd
Ответов: 1

Всем привет
А можно ли в laravel 5.7 из консоли запустить контрол который выводит отчет?
То есть кроном запучкается консольная команда
php artisan report:available-spaces-by-zones

Сама команда app/Console/Commands/reportAvailableSpacesByZones.php :

<?php

namespace App\Console\Commands;

use Illuminate\Console\Command;
use Carbon\Carbon;
use App\library\AvailableSpacesByZonesReport;

class reportAvailableSpacesByZones extends Command
{
    protected $signature = 'report:available-spaces-by-zones';

    protected $description = 'With this command available-spaces-by-zones report will be sent daily';

    public function __construct()
    {
        parent::__construct();
    }

    public function handle()
    {
        \Log::info( 'Report From inside app/Console/Commands/reportAvailableSpacesByZones.php run # ' . time()  );// Сообщения в лог добавляются
        return redirect()->to('/admin/report/available-spaces-by-zones/send-email-on-open');// ОТЧЕТ НЕ ВЫПОЛНЯЕТСЯ
    }

}

Если запустить в браузер урл
/admin/report/available-spaces-by-zones/send-email-on-open
То рендится отчет и отправляется на мейл

Но редирект выше не работает и похоже не запускается совсем  нет нет логов запуска котнрола.
А как правильно?


2) Мелькнула мысль переделать отчет в обьекте с blade-темплейтом отдельно и вызывать его как в контроле так и в консольной команде.

Есть ли что в laravel 5.7 удобное для этого ?
Как лучше сделать?

Спасибо!

#4 Laravel 5 » Установка laravel 5 приложения без консоли ? » 06.05.2019 18:47:57

mstdmstd
Ответов: 0

Вем привет,
Клиент озадачил : дал ftp доступ к своему серверу для установки laravel 5 приложения
Я зашел на сервер в Filezilla используя fstp-ssh протокол
Без node_modules и vendor загрузился довольно быстро - но все равно нужна консоль - можно ли ее получить из Filezilla ?
И можно ли установить laravel 5 приложение без консоли?

Спасибо!

#6 Прочее » Установить swapfile в ubuntu » 30.03.2019 19:31:19

mstdmstd
Ответов: 1

Всем привет,
выполняя на сервере установку laravel проекта столкнулся с ошибкой нехваткой памяти
Погуглив нашел решение выполнив команды

sudo fallocate -l 1G /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
sudo swapon -a

Но после загрузки системы опять ошибка с нехваткой памяти и выполнив команды выше
ошибка ушла.
А как установить swap постоянно ?

Спасибо!

#7 Laravel 5 » Чем делать кеширование динамического содержимого сайта » 29.03.2019 19:35:51

mstdmstd
Ответов: 3

Всем привет,
Понадобилось сделать кеширование для небольшого laravel 5 сайта(пока что несколько сот статей / новостей, но предполагается, что сайт будет расти) с динамическим содержимым.
Обновление содержимого будет не таким уж и частым.
Наткнулся на такой плагин
https://github.com/spatie/laravel-responsecache
Показалось интересным
Как по вашему этот плагин удобен? Никто им не пользовался ?

Ранее с кешированием содержимого сайтов сталкиваться не доводилось... Хотелось бы начать с чего-то нге очень громадного...

Спасибо!

#8 Laravel 5 » Ошибка 403 при запуске примера с сокетом » 24.03.2019 15:26:53

mstdmstd
Ответов: 0

Всем привет,
Пытаюсь запустить пример с websockets-ом отсюда https://www.youtube.com/watch?v=HoSTTfj … G&index=11 и описанием команд
https://dka-develop.ru/blog/article/lar … 0403191710
со ссылкой на github
Запускю приложение и залогинился но при открытии страницы с чатом в консоле получаю ошибку:

VM855:1 POST [url]http://local-001laravel-php-websockets-master.com/broadcasting/auth[/url] 403 (Forbidden)

Где http://local-001laravel-php-websockets-master.com это хостинг локально с настройками и прописвнный в .env

<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    DocumentRoot /_wwwroot/lar/Examples/001laravel-php-websockets-master/public    
    <Directory /_wwwroot/lar/Examples/001laravel-php-websockets-master/public>
      AllowOverride All
      Order Deny,Allow
      Allow from all
      Require all granted
    </Directory>
    
    ServerName local-001laravel-php-websockets-master.com
    ServerAlias local-001laravel-php-websockets-master.com

    Options FollowSymLinks
    DirectoryIndex index.php
    
    ErrorLog /_wwwroot/lar/Examples/001laravel-php-websockets-master/storage/logs/error.log
    CustomLog /_wwwroot/lar/Examples/001laravel-php-websockets-master/storage/logs/access.log combined
</VirtualHost>

Непонятно к чему нет доступа ? В приложение я залогинился. Там упоминался redis.
Я повторил то было в видео :

$ redis-cli
127.0.0.1:6379> 

r$ redis-cli monitor
OK
redis-cli monitor
$ netstat -an | grep 6379
tcp        0      0 127.0.0.1:6379          0.0.0.0:*               LISTEN     
tcp        0      0 127.0.0.1:6379          127.0.0.1:60022         ESTABLISHED
tcp        0      0 127.0.0.1:6379          127.0.0.1:60032         ESTABLISHED
tcp        0      0 127.0.0.1:60022         127.0.0.1:6379          ESTABLISHED
tcp        0      0 127.0.0.1:60032         127.0.0.1:6379          ESTABLISHED
tcp6       0      0 ::1:6379                :::*                    LISTEN     
$ php artisan websockets:serve
Starting the WebSocket server on port 6001...
New connection opened for app key 123.
Connection id 369720864.693996453 sending message {"event":"pusher:connection_established","data":"{\"socket_id\":\"369720864.693996453\",\"activity_timeout\":30}"}
Connection id 369720864.693996453 closed.
New connection opened for app key 123.
Connection id 52622455.774637789 sending message {"event":"pusher:connection_established","data":"{\"socket_id\":\"52622455.774637789\",\"activity_timeout\":30}"}

.env :

APP_NAME=Laravel
APP_ENV=local
APP_KEY=base64:HhKIpN1Zz1THpIPKg26dh6Sbo1+gmaT6r1Za6BJCtyM=
APP_DEBUG=true
APP_URL=http://local-001laravel-php-websockets-master.com

LOG_CHANNEL=stack

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=001laravel-php-websockets-master
DB_USERNAME=root
DB_PASSWORD=1

\\ В качестве вещателя прописывает pusher
BROADCAST_DRIVER=pusher
\\ Фейковые данные
PUSHER_APP_ID=123
PUSHER_APP_KEY=123
PUSHER_APP_SECRET=1234324
PUSHER_APP_CLUSTER=mt1

CACHE_DRIVER=file
QUEUE_CONNECTION=sync
SESSION_DRIVER=file
SESSION_LIFETIME=120

REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379

MAIL_DRIVER=smtp
MAIL_HOST=smtp.mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null

AWS_ACCESS_KEY_ID=
AWS_SECRET_ACCESS_KEY=
AWS_DEFAULT_REGION=us-east-1
AWS_BUCKET=


MIX_PUSHER_APP_KEY="${PUSHER_APP_KEY}"
MIX_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}"

С Redis-ом работать не довелось...
Еще нужны какие-то настройки?


Спасибо!

#9 Re: Laravel 5 » Ошибка Permission denied (publickey) при запуске envoy » 15.03.2019 07:46:29

Спасибо за помощь !
Я постарался выпонить вышеуказанные команды и перезапустил систему, но та же самая ошибка.  Имею доступ локально:

serge@serge:~/.ssh$ ls -la
total 36
drwx------  2 serge serge 4096 9 16:36 .
drwxr-xr-x 48 serge serge 4096 15 06:10 ..
-rw-r--r--  1 serge serge  398 26 07:57 authorized_keys
-rwx------  1 serge serge  181  9 16:33 config
-rw-------  1 serge serge 1679  25  2018 id_rsa
-r--------  1 serge serge  426  3 10:35 id_rsa.pem
-r--------  1 serge serge  393  25  2018 id_rsa.pub
-rwxrwxrwx  1 serge serge 5882  6 18:35 known_hosts

И на сервере :

root@nsn-do-lamp:~# cd /home/lardeployer/.ssh/
root@nsn-do-lamp:/home/lardeployer/.ssh# ls -la
total 24
drwx------ 2 lardeployer lardeployer 4096 Mar 10 04:43 .
drwxr-xr-x 7 lardeployer lardeployer 4096 Mar 15 04:32 ..
-rw-r--r-- 1 lardeployer lardeployer  182 Mar 10 04:31 config
-rw-r--r-- 1 lardeployer lardeployer 1680 Mar 10 04:31 id_rsa
-rw-r--r-- 1 lardeployer lardeployer  394 Mar  9 05:57 id_rsa.pub
-rw-r--r-- 1 lardeployer lardeployer 1768 Mar 10 04:40 known_hosts

Я то-то упустил из ваших инструкций?

Но выполнив по вашему совету вход через своего созданного юзера получил ошибку, что на приватный ключ слишком много прав :

ssh lardeployer@NNN.NN.NN.N
$ git clone git@bitbucket.org:sergeynilov/votes.git
Cloning into 'votes'...
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@         WARNING: UNPROTECTED PRIVATE KEY FILE!          @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0644 for '/home/lardeployer/.ssh/id_rsa' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
Load key "/home/lardeployer/.ssh/id_rsa": bad permissions                                                                                                                                                              
git@bitbucket.org: Permission denied (publickey).                                                                                                                                                                      
fatal: Could not read from remote repository.                                                                                                                                                                          
                                                                                                                                                                                                                       
Please make sure you have the correct access rights                                                                                                                                                                    
and the repository exists.

Непонятно откуда там взялось 0644 и как быть дальше ?

#10 Re: Laravel 5 » Ошибка Permission denied (publickey) при запуске envoy » 14.03.2019 15:45:43

Это выполнять локально ?
Полчуаю ошибку :

# chown +R serge:serge .ssh/
chown: invalid user: ‘+R’

#11 Re: Laravel 5 » Ошибка Permission denied (publickey) при запуске envoy » 14.03.2019 14:13:13

На моем локальном компе файлы в .ssh/ имеют права :

$ ls -la
total 36
drwxrwxrwx  2 serge serge 4096 .
drwxr-xr-x 48 serge serge 4096  ..
-rw-r--r--  1 root  root   398 authorized_keys
-rwx------  1 serge serge  181 config
-rw-------  1 serge serge 1679 id_rsa
-r--------  1 serge serge  426 id_rsa.pem
-r--------  1 serge serge  393 id_rsa.pub
-rwxrwxrwx  1 serge serge 5882 known_hosts

и я нормально работаю с git в командной сртоке используя ssh

Не может ли прчина быть в том что нужны друние права этих файлов ?

#12 Re: Laravel 5 » Ошибка Permission denied (publickey) при запуске envoy » 14.03.2019 12:01:50

То есть заместо

ssh root@N.N.N.N

входить

ssh lardeployer@N.N.N.N

попробовал зашел и нормально загрузил проект через git clone
А чего ж не захотел через envoy ?

#13 Laravel 5 » Ошибка Permission denied (publickey) при запуске envoy » 14.03.2019 08:28:44

mstdmstd
Ответов: 10

Всем привет!
Выполняю run envoy  и введя пароль юзера и получаю ошибку доступа ssh publickey

$ envoy run VotesDeploy
lardeployer@NNN.NN.NN.NN's password: 
[lardeployer@NNN.NN.NN.NN]: Cloning into '20190314070955'...
[lardeployer@NNN.NN.NN.NN]: git clone git@bitbucket.org: Permission denied (publickey).
[lardeployer@NNN.NN.NN.NN]: fatal: Could not read from remote repository.
[lardeployer@NNN.NN.NN.NN]: Please make sure you have the correct access rights
...

Между тем если на самом сервере(Ubuntu 18 под Digital Ocean) переключиться на пользователя что я использую в envoy

su -l  lardeployer
git clone git@bitbucket.org:myaccount/votes.git

проект успешно загружается

В моем envoy файле:

@setup
    $server_login_user= 'lardeployer';
       ...

@endsetup

@servers(['production' => $server_login_user.'@NNN.NN.NN.NN'])

В чем проблема ? Нехватка прав для юзера lardeployer?

Спасибо!

#14 Re: Веб-разработка » Какая практическая польза в использовании envoy? » 10.03.2019 09:24:53

Я настроил ssh на сервере так что при вводе команды git clone под нерутовым пользователем успешно выполяется (если выполнить под рутом то ошибка доступа) :

# su -l lardeployer 
$ git clone git@bitbucket.org:myaccount/votes.git
...
cloned ok

Но при запуске envoy получаю ошибку доступа:

$ envoy run deploy
lardeployer@138.68.107.4's password: 
[lardeployer@138.68.107.4]: Cloning into '20190310080335'...
[lardeployer@138.68.107.4]: git clone git@bitbucket.org: Permission denied (publickey).
[lardeployer@138.68.107.4]: fatal: Could not read from remote repository.
[lardeployer@138.68.107.4]: Please make sure you have the correct access rights
[lardeployer@138.68.107.4]: and the repository exists.
[✗] This task did not complete successfully on one of your servers.

Во второсм случае консоль затребовала пароль юзера lardeployer

В Envoy.blade.php :

@setup
    $server_login_user= 'lardeployer';
    ...

@endsetup

@servers(['production' => $server_login_user.'@NNN.NN.NNN.N'])

Непонятно почему ошибка и как починить ?

#15 Re: Веб-разработка » Какая практическая польза в использовании envoy? » 28.02.2019 09:45:17

Нашел обучалку как развернуть envoy
www.youtube.com/watch?v=mkntP_9Vu5Q&t=96s
И в самом начале там прилагается создать отдельного юзера а не использовать root
Для этого на сервере я открыл /etc/group и отредактировал строку :

www-data:x:33:lardeployer

Но получаю ошибку:

sudo  chown lardeployer:www-data /var/www/html/LiveBoxing
chown: invalid user: ‘lardeployer:www-data’

И выполнив :

 cut -d: -f1 /etc/passwd 

в списке пользователей lardeployer нет
систему после измернения /etc/group я ребутил

Почему ошибка и как исправить ?

#16 Re: Веб-разработка » Какая практическая польза в использовании envoy? » 26.02.2019 10:50:02

Просто ещё один способ деплоя.

Я уже упомниал что у меня привыйчный способ деплоя с помщтью git комманд. А можно вкратце какие еще способы есть и плюсы/минусы ?

#17 Веб-разработка » Какая практическая польза в использовании envoy? » 26.02.2019 10:12:04

mstdmstd
Ответов: 8

Всем привет
читаю использование envoy https://laravel.com/docs/5.7/envoy  и не пойму в чем его преимущество
и в каких случаях его нужно использовать ?
Обычно приложение делится на 2 части dev/live(обе доступ через git  там несложный набор команд) - и предпрологается что live это оттестирования версия без ошибок...

А каким образом тут envoy ? Можно с примерами когдп есть практическая польза?

Спасибо!

#18 Laravel 5 » Скрипт добавление множественных телефонов и емейлов » 14.01.2019 17:47:02

mstdmstd
Ответов: 1

Всем привет!
Мне нужно сделать добавление множественных телефонов и емейлов без открытия отдельно окна и предварительного сохарнения данных окна(клиента) что-то вроде:
https://imgur.com/a/ZjuL1R9
при этом кроме самого поля ввода емейла и телефона есть выпадающий список Тип Телефона/Мейла
Laravel 5.7 / jQuery 3 / Blade /Bootsrap 4.1

Может есть какие-то скрипты или плагины для этого ?
Я так приблизительно понимаю как это писать на jQuery - но может есть уже написанный удобный вариант ?

Спасибо !

#19 Веб-разработка » Как можно приделать rss-пиктограмку ? » 07.01.2019 15:56:55

mstdmstd
Ответов: 0

Всем привет.
А как можно приделать rss-пиктограмку к laravel 5/Appache2/ubuntu приложению со ссылкой на feed-страницу?
Спасибо !

#20 Веб-разработка » Сделать чтобы картинки из storage/app/public были использованы в git о » 19.11.2018 16:37:35

mstdmstd
Ответов: 1

всем привет!
В моем latravel 5 приложении нужно чтобы подкаталоги с инициализирущими картинками из storage/app/public были использованы в git обмене

project/storage/app/public$ ls -la
total 17
drwxrwxrwx 1 root root 4096 лис 15 16:40 .
drwxrwxrwx 1 root root    0 бер 16  2018 ..
drwxrwxrwx 1 root root 4096 тра 27 15:27 artist-images
drwxrwxrwx 1 root root 4096 лис 15 13:10 cms-item-images
-rwxrwxrwx 1 root root   69 лис 15 16:40 .gitignore
drwxrwxrwx 1 root root 4096 лис 12 17:55 user-avatars

Я изменил .gitignore на :

!artist-images/
!cms-item-images/
!user-avatars/

и полагал что сам файл .gitignore будет учавствовать в обмене(так и произошло) но 3 каталога в обмене не учавствовуют как я надеялся

но команда

gitstatus

отображает только измененный файл storage/app/public/.gitignore

А как правильно ?

Спасибо!

#21 Laravel 5 » Как ведение лога запроса elasticsearch-а » 14.11.2018 09:23:49

mstdmstd
Ответов: 0

Всем привет
Есть переводная строка по использованию elasticsearch в laravel-приложении
http://laravel-news.ru/blog/tutorials/l … th-laravel

Неполучилось ведение лога запроса elasticsearch-а

Непонятно что автор имел в виду :

Чтобы это заработало, надо прописать зависимости в сервис-провайдере.

Я понял что это файл app/Providers/AppServiceProvider.php и добавлял код в него :

<?php

namespace App\Providers;

use Auth;
use Validator;
use Illuminate\Support\Facades\Blade;

use Illuminate\Support\ServiceProvider;

class AppServiceProvider extends ServiceProvider
{
    use funcsTrait;

    public function boot()
    {

        if ($this->app->environment('local')) {

            \Event::listen( // Logs of sql statements
                [
                    TransactionBeginning::class,
                ],
                function ($event) {
                ...
                });


            \Event::listen(
                [
                    TransactionCommitted::class,
                ],
                function ($event) {
                ...
                });

                ...

        } // if ($this->app->environment('local')) {


		// Validation methods
        Validator::extend('check_vote_item_unique_by_name', function ($attribute, $value, $parameters, $validator) {
            $vote_id         = $parameters[0] ?? null;
            $vote_item_id    = $parameters[1] ?? null;
            $vote_item_count = VoteItem::getSimilarVoteItemByName($value, (int)$vote_id, (int)$vote_item_id, true);

            return $vote_item_count == 0;
        });

    }

    /**
     * Register any application services.
     *
     * @return void
     */
    public function register()
    {
		// Here I added Elastic log
        $this->app->bind(Elastic::class, function ($app) {
            return new Elastic(
                ClientBuilder::create()
                             ->setLogger(ClientBuilder::defaultLogger(storage_path('logs/elastic.log')))
                             ->build()
            );
        });

    }
}

Но код в register даже не вызывается(даже есди там указать явную ошибку)...

А как правильно ?

Спасибо!

#22 Re: Общий раздел » При запуске Docker-а mews/captcha требует какой-то ext-gd ? » 19.10.2018 09:50:55

Обнаоужил что у меня в вистеме установлены https://imgur.com/a/BKbQDlv пакеты
php7.2-gd и php-gd

и я попытался изменить строку в web/Dockerfile.yml :

RUN apt-get update -y && apt-get install -y sendmail libpng-dev  php7.2-gd  php-gd

Но получил ошибку :
E: Package 'php7.2-gd' has no installation candidate

E: Package 'php-gd' has no installation candidate
ERROR: Service 'webapp' failed to build: The command '/bin/sh -c apt-get update -y && apt-get install -y sendmail libpng-dev  php7.2-gd  php-gd' returned a non-zero code: 100

Как правильно ?

Приложение без docker-а в kubvunutu 18.04 работает нормально ...

#23 Общий раздел » При запуске Docker-а mews/captcha требует какой-то ext-gd ? » 19.10.2018 09:23:04

mstdmstd
Ответов: 1

Всем привет.
Создал небольшой docker-проект laravel 5.7 приложения но получаю ошибки :

- Installation request for mews/captcha 2.2.1 -> satisfiable by mews/captcha[2.2.1].
    - mews/captcha 2.2.1 requires ext-gd * -> the requested PHP extension gd is missing from your system.

.env:

# PATHS
DB_PATH_HOST=./databases
APP_PATH_HOST=./votes
APP_PTH_CONTAINER=/var/www/html/

docker-compose.yml:

version: '3'

services:

    webapp:
        build:
        # need context and dockerfile as we do not use default Dockerfile
            context: ./web
            dockerfile: Dockerfile.yml
        
        environment:
            - APACHE_RUN_USER=www-data
        volumes:
            - ${APP_PATH_HOST}:${APP_PTH_CONTAINER}
        ports:
            - 8080:80
        working_dir: ${APP_PTH_CONTAINER}

    db:
        image: mysql:5.6.41

        restart: always
        environment: 
            MYSQL_ROOT_PASSWORD: 1
        volumes:
            - ${DB_PATH_HOST}:/var/lib/mysql

    adminer:
        image: adminer
        restart: always
        ports:
            - 8081:8080
            
    composer:
        image: composer:1.6
        volumes:
            - ${APP_PATH_HOST}:${APP_PTH_CONTAINER}
        working_dir: ${APP_PTH_CONTAINER}
        command: composer install        

web/Dockerfile.yml :

FROM php:7.2-apache

RUN apt-get update -y && apt-get install -y sendmail libpng-dev

RUN docker-php-ext-install \
    pdo_mysql \
    gd \
    && a2enmod \
    rewrite

и при запуске :

docker-compose up -d :

...
Digest: sha256:6ad9c9a01a2c7fe4818f3042e7922aefa5aa63d0c71fbf4d1a1a7e3938d3be03
Status: Downloaded newer image for composer:1.6
Creating votes_docker_webapp_1   ... done
Creating votes_docker_adminer_1  ... done
Creating votes_docker_db_1       ... done
Creating votes_docker_composer_1 ... done
serge@serge:/mnt/_work_sdb8/wwwroot/lar/DockerApps/votes_docker$ docker images
REPOSITORY            TAG                 IMAGE ID            CREATED             SIZE
votes_docker_webapp   latest              f7bafdcd588d        31 minutes ago      416MB
mysql                 5.6.41              085b9b6ec8a9        2 days ago          256MB
php                   7.2-apache          cf1a377ba77f        3 days ago          377MB
adminer               latest              e6a50ea92943        3 days ago          81.6MB
composer              1.6                 eea351f3627d        3 days ago          155MB
mysql                 5.7.22              6bb891430fb6        2 months ago        372MB
php                   fpm-alpine          601d5b3a95d4        3 months ago        80.6MB
php                   apache              d9faf33e6e40        3 months ago        377MB
mysql                 latest              8d99edb9fd40        3 months ago        445MB
php                   7-fpm               854ffd8dc9d8        4 months ago        367MB
php                   7.2                 e86d9bb526ef        4 months ago        367MB
ukfx/php              apache-stretch      5958cb7c2316        4 months ago        648MB
nginx                 alpine              bc7fdec94612        4 months ago        18MB
hello-world           latest              e38bc07ac18e        6 months ago        1.85kB
composer/composer     latest              5afb0951f2a4        2 years ago         636MB


$ docker logs --tail=20  votes_docker_composer_1
Loading composer repositories with package information
Installing dependencies (including require-dev) from lock file
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - Installation request for mews/captcha 2.2.1 -> satisfiable by mews/captcha[2.2.1].
    - mews/captcha 2.2.1 requires ext-gd * -> the requested PHP extension gd is missing from your system.

  To enable extensions, verify that they are enabled in your .ini files:
    - 
    - /usr/local/etc/php/conf.d/date_timezone.ini
    - /usr/local/etc/php/conf.d/docker-php-ext-sodium.ini
    - /usr/local/etc/php/conf.d/docker-php-ext-zip.ini
    - /usr/local/etc/php/conf.d/memory-limit.ini
  You can also run `php --ini` inside terminal to see which files are used by PHP in CLI mode.
serge@serge:/mnt/_work_sdb8/wwwroot/lar/DockerApps/votes_docker$ docker logs --tail=20  votes_docker_adminer_1
PHP 7.2.11 Development Server started at Fri Oct 19 05:30:53 2018
[Fri Oct 19 05:40:21 2018] ::ffff:196.52.43.103:50904 [200]: /
serge@serge:/mnt/_work_sdb8/wwwroot/lar/DockerApps/votes_docker$ docker logs --tail=20  votes_docker_webapp_1
AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 172.18.0.4. Set the 'ServerName' directive globally to suppress this message
AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 172.18.0.4. Set the 'ServerName' directive globally to suppress this message
[Fri Oct 19 05:30:52.245548 2018] [mpm_prefork:notice] [pid 1] AH00163: Apache/2.4.25 (Debian) PHP/7.2.11 configured -- resuming normal operations
[Fri Oct 19 05:30:52.245606 2018] [core:notice] [pid 1] AH00094: Command line: 'apache2 -D FOREGROUND'
serge@serge:/mnt/_work_sdb8/wwwroot/lar/DockerApps/votes_docker$ docker logs --tail=20  votes_docker_db_1
2018-10-19 06:03:32 1 [Note] Shutting down plugin 'INNODB_CMP_PER_INDEX'
2018-10-19 06:03:32 1 [Note] Shutting down plugin 'INNODB_CMPMEM_RESET'
2018-10-19 06:03:32 1 [Note] Shutting down plugin 'INNODB_CMPMEM'
2018-10-19 06:03:32 1 [Note] Shutting down plugin 'INNODB_CMP_RESET'
2018-10-19 06:03:32 1 [Note] Shutting down plugin 'INNODB_CMP'
2018-10-19 06:03:32 1 [Note] Shutting down plugin 'INNODB_LOCK_WAITS'
2018-10-19 06:03:32 1 [Note] Shutting down plugin 'INNODB_LOCKS'
2018-10-19 06:03:32 1 [Note] Shutting down plugin 'INNODB_TRX'
2018-10-19 06:03:32 1 [Note] Shutting down plugin 'BLACKHOLE'
2018-10-19 06:03:32 1 [Note] Shutting down plugin 'ARCHIVE'
2018-10-19 06:03:32 1 [Note] Shutting down plugin 'MRG_MYISAM'
2018-10-19 06:03:32 1 [Note] Shutting down plugin 'MyISAM'
2018-10-19 06:03:32 1 [Note] Shutting down plugin 'MEMORY'
2018-10-19 06:03:32 1 [Note] Shutting down plugin 'CSV'
2018-10-19 06:03:32 1 [Note] Shutting down plugin 'sha256_password'
2018-10-19 06:03:32 1 [Note] Shutting down plugin 'mysql_old_password'
2018-10-19 06:03:32 1 [Note] Shutting down plugin 'mysql_native_password'
2018-10-19 06:03:32 1 [Note] Shutting down plugin 'binlog'
2018-10-19 06:03:32 1 [Note] mysqld: Shutdown complete

Видны ошибки в композере и они явно критичны - хотя установку gd я прописал в web/Dockerfile.yml

В composer.json моего composer.json ппрописано :

{
    "name": "laravel/laravel",
    "description": "The Laravel Framework.",
    "keywords": ["framework", "laravel"],
    "license": "MIT",
    "type": "project",
    "require": {
        "php": "^7.1.3",
        "aloha/twilio": "^4.0",
        "cviebrock/eloquent-sluggable": "^4.5",
        "davejamesmiller/laravel-breadcrumbs": "5.x",
        "doctrine/dbal": "^2.8",
        "fideloper/proxy": "^4.0",
        "intervention/image": "^2.4",
        "itsgoingd/clockwork": "^3.0",
        "jrean/laravel-user-verification": "^7.0",
        "laravel/framework": "5.7.*",
        "laravel/tinker": "^1.0",
        "laravelcollective/html": "^5.4.0",
        "mews/captcha": "^2.2",
        "proengsoft/laravel-jsvalidation": ">2.2.0",
        "rap2hpoutre/laravel-log-viewer": "^0.19.1",
        "snowfire/beautymail": "dev-master",
        "spatie/laravel-tags": "^2.1",
        "themsaid/laravel-mail-preview": "^2.0",
        "wboyz/laravel-enum": "^0.2.1",
        "yajra/laravel-datatables-oracle": "^8.7"
    },
    "require-dev": {
        "barryvdh/laravel-debugbar": "^3.1",
        "beyondcode/laravel-dump-server": "^1.2",
        "filp/whoops": "^2.0",
        "fzaninotto/faker": "^1.4",
        "mockery/mockery": "^1.0",
        "nunomaduro/collision": "^2.0",
        "phpunit/phpunit": "^7.0"
    },
    "autoload": {
        "classmap": [
            "database/seeds",
            "database/factories"
        ],
        "psr-4": {
            "App\\": "app/"
        }
    },
    "autoload-dev": {
        "psr-4": {
            "Tests\\": "tests/"
        }
    },
    "extra": {
        "laravel": {
            "dont-discover": [
            ]
        }
    },
    "scripts": {
        "post-root-package-install": [
            "@php -r \"file_exists('.env') || copy('.env.example', '.env');\""
        ],
        "post-create-project-cmd": [
            "@php artisan key:generate"
        ],
        "post-autoload-dump": [
            "Illuminate\\Foundation\\ComposerScripts::postAutoloadDump",
            "@php artisan package:discover"
        ],


        "post-update-cmd": [
            "php artisan vendor:publish --provider=\"Proengsoft\\JsValidation\\JsValidationServiceProvider\" --tag=public --force"
        ]

    },
    "config": {
        "preferred-install": "dist",
        "sort-packages": true,
        "optimize-autoloader": true
    },
    "minimum-stability": "dev",
    "prefer-stable": true
}

mews/captcha требует какой-то ext-gd * - разве это что-то иное что я прописал в web/Dockerfile.yml ?

Спасибо!

#24 Laravel 5 » Расширенные возможности рутов? » 20.09.2018 08:23:48

mstdmstd
Ответов: 1

Всем привет!
В одной статье по Laravel нашел описание возможности для рутов

Route::post('register/details', array(
        'before'  => 'guest|csrf',

Проверил - да работет и руты вызываются если выполняются guest или csrf

Но тут https://laravel.com/docs/5.7/routing
такого описания нет
Нет ли ссылочки на такие возможности ? там еще что-то есть ?


Спасибо!

#25 Веб-разработка » Тестирование в sqlite » 12.09.2018 15:33:23

mstdmstd
Ответов: 1

Всем привет!

В laravel 5.6 делая тесты подключил sqlite и выполнив миграцию на таблицу пользователей

Schema::create('users', function (Blueprint $table) {
    $table->increments('id');
    $table->string('username',100)->unique();
    $table->string('email', 100)->unique();
    $table->string('password');

Вижу что в синтаксисе созданной таблицы

CREATE TABLE "users" ("id" integer not null primary key autoincrement, "username" varchar not null, "email" varchar not null, "password" varchar not null, 
...

1) для строковых полей размер поля не указан. в sqlite у строк нет размера ?
2) Могут ли быть какие проблемы если при разработке использовал mysql, а для тестирования взять sqlite ?
Погружаться в sqlite как-то совсем не хочется...
Я вычитал что для тестирования sqlite как раз и хорош - так как он однопользовательский ...

3) А для каких приложений(кроме тестирования) sqlite может быть удобен ? С трудом представляю что такое однопользовательские приложения
на php ... Можно несколько примеров?

Спасибо!

Подвал раздела