如何使用docker容器从Host运行artisan命令

时间:2018-02-13 17:31:07

标签: laravel docker

如果服务器运行到容器中,可以从主机运行“php artisan命令”,以及如何运行?

4 个答案:

答案 0 :(得分:1)

您需要更改路径引用以适合您自己的项目,但这使您无需登录即可从容器上的主机执行artisan命令。

docker exec -it <php-fpm-container> /var/www/html/artisan

答案 1 :(得分:0)

从主机运行命令,

您可以使用Docker&#39; exec命令:

docker exec -it my-container-name /bin/bash

之后,您可以运行任何您想要的命令

php artisan --version

答案 2 :(得分:0)

这是解决方案!好的,有一段时间,我以为我疯了,但我没有。诀窍是将PHP设置为主机(用于CLI),与docker PHP版本匹配,因此: This image shows how the trick works

答案 3 :(得分:0)

主机上的客户端(php artisan)与容器中的服务器通信是一个已解决的问题:

这可以通过两种方式完成。它们使容器中的服务器端口可以在主机上访问:

  1. -p传递给docker run,将服务器端口发布到主机。更多信息是here

    docker run -p hostPort:containerPort ...
    
  2. --network host传递给docker run,使用Docker的“主机网络”。更多信息是here

    docker run --network host ...