Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

1.2K
Vistas
Docker Laravel Mysql: no se pudo encontrar el controlador

Cuando ejecuto docker-compose up y ejecuto algunos comandos del composer , aparece un error

En Connection.php línea 664: no se pudo encontrar el controlador (SQL: seleccionar id , name de users En Connector.php línea 68: no se pudo encontrar el controlador...

¿Por qué Laravel no puede conectarse a mysql? Puedo hacer mysql -h db en docker-compose exec web bash y funciona.

mi configuración

docker-compose.yml

 version: '3' services: web: build: ./webserver ports: - "80:80" - "443:443" volumes: - //docker/dockertest/webserver/app:/var/www/vhosts/app links: - db command: - /usr/local/bin/apache2_install_composer_dependencies.sh db: image: mysql:8.0 container_name: db ports: - "3306:3306" command: --default-authentication-plugin=mysql_native_password environment: MYSQL_DATABASE: myDb MYSQL_USER: user MYSQL_PASSWORD: test MYSQL_ROOT_PASSWORD: test volumes: - //docker/dockertest/install/db_dump:/docker-entrypoint-initdb.d - persistent:/var/lib/mysql networks: - default phpmyadmin: image: phpmyadmin/phpmyadmin links: - db:db ports: - 8000:80 environment: MYSQL_USER: user MYSQL_PASSWORD: test MYSQL_ROOT_PASSWORD: test volumes: persistent:

Laravel .env (hago referencia a estos valores en config/database.php )

 ... DB_CONNECTION=mysql #host points to Docker container DB_HOST=db DB_PORT=3306 DB_DATABASE=myDb DB_USERNAME=user DB_PASSWORD=test ....

webserver/Dockerfile

 FROM php:7.2.19-apache-stretch # Configure Apache server COPY config_apache/sites-available /etc/apache2/sites-available # Create symlink in sites-enabled WORKDIR /etc/apache2/sites-enabled RUN ln -s /etc/apache2/sites-available/app.conf app.conf RUN mkdir -p /var/www/vhosts/app/logs COPY /build_files/install_composer_dependencies.sh /usr/local/bin/apache2_install_composer_dependencies.sh RUN apt-get update -y && apt-get install -y curl nano libapache2-mod-geoip git zip unzip mysql-client # Install Composer RUN curl -o /tmp/composer-setup.php https://getcomposer.org/installer \ && curl -o /tmp/composer-setup.sig https://composer.github.io/installer.sig \ # Verify installer && php -r "if (hash('SHA384', file_get_contents('/tmp/composer-setup.php')) !== trim(file_get_contents('/tmp/composer-setup.sig'))) { unlink('/tmp/composer-setup.php'); echo 'Invalid installer' . PHP_EOL; exit(1); }" \ && php /tmp/composer-setup.php --no-ansi --install-dir=/usr/local/bin --filename=composer --snapshot \ && rm -f /tmp/composer-setup.* RUN a2enmod rewrite RUN a2enmod geoip RUN service apache2 restart
over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

Agregar RUN docker-php-ext-install mysqli pdo pdo_mysql (sin mysql ) a Dockerfile como sugirió @NigelRen resolvió este error.

over 4 years ago · Santiago Trujillo Denunciar

0

intente instalar php-mysql con el siguiente comando sudo apt-get install php-mysql y reinicie su servidor

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda