NOTE: Done with Mosquitto-2.0.10. Should work with other versions.

Download and Install

Download: https://mosquitto.org/download/

$ tar -zxf mosquitto-2.0.10.tar.gz
$ cd mosquitto-2.0.10
$ sudo apt install build-essential libssl-dev libwebsockets-dev libcjson-dev -y
$ make WITH_WEBSOCKETS=yes # You can edit config.mk file or override all available variables there in this way
$ sudo make install # Installs the library to…

Em primeiro lugar, inicia um container PHP e mantém-o em execução.

docker run -itd --restart always --name php-path php:7.4

Cria um ficheiro chamado php na pasta /usr/local/bin.

sudo nano /usr/local/bin/php

Com o conteúdo abaixo:

#!/bin/bash
docker exec -i --user=1000:1000 php-path php "$@"

Torna o ficheiro executável.

sudo chmod +x /usr/local/bin/php

1000:1000 são os ids do utilizador e grupo na máquina local. Isto é necessário para prevenir que o container mude o proprietário dos ficheiros.

Pronto. Agora podes experimentar:

php -v

At first, start a PHP container and keep it running.

docker run -itd --restart always --name php-path php:7.4

Create a file named php in /usr/local/bin folder.

sudo nano /usr/local/bin/php

With the contents below:

#!/bin/bash
docker exec -i --user=1000:1000 php-path php "$@"

Make the file executable.

sudo chmod +x /usr/local/bin/php

1000:1000 are the user and group ids on the host machine. This is necessary to prevent the container from changing the owner of the files.

That’s it. Now you can try it:

php -v

COVID-19

Vivemos na era das novas tecnologias, mas infelizmente estas têm sido usadas para quase tudo, menos para contribuir para um mundo melhor.

Neste momento, o nosso país (e outros, mas vou falar de Portugal) vive um momento de muita insegurança e que vai aumentar nos próximos dias com o incremento…

To start running your Dusk tests with Laradock, in addition to the installation as explained in the official Laravel documentation, two more steps are needed.

First of all, you must create a specific environment file for Dusk, just following the official Laravel documentation (Environment Handling).

In the new file (for example, .env.dusk.local) the variable APP_URL must be set to http://nginx.

APP_URL=http://nginx

And, in the tests / DuskTestCase.php file, change the url of the selenium server to http://selenium: 4444/wd/hub.

return RemoteWebDriver::create(
'http://selenium:4444/wd/hub', DesiredCapabilities::chrome()->setCapability(
ChromeOptions::CAPABILITY, $options
)
);

It’s ready, now you can run your Dusk tests:

php artisan dusk

Para começar a correr os seus testes Dusk com o Laradock, para além da instalação como explicada na documentação oficial da Laravel, são necessárias mais duas etapas.

Em primeiro lugar deverás criar um ficheiro de ambiente específico para o Dusk, sendo apenas preciso seguir a documentação oficial da Laravel (Environment Handling).

No novo ficheiro (por exemplo, .env.dusk.local) a variável APP_URL deve ser configurada como http://nginx. Ou seja:

APP_URL=http://nginx

E, no ficheiro tests/DuskTestCase.php mudar o url do servidor selenium para http://selenium:4444/wd/hub. Ou seja:

return RemoteWebDriver::create(
'http://selenium:4444/wd/hub', DesiredCapabilities::chrome()->setCapability(
ChromeOptions::CAPABILITY, $options
)
);

Pronto, agora já podes correr os teus testes Dusk:

php artisan dusk

Luis Coutinho

Full Stack Web Developer

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store