PHP.ini dentro do docker
[Finalizado Pelo Aluno]
![Marcos Birro Calixto](https://storage.googleapis.com/eti-academy/users/marcos-birro-calixto.png)
Bom dia.
Fui instalar o pacote Laravel/Excel mas apareceu que preciso habilitar extensões no pnp.ini. Só que não sei onde o php.ini está. Pode me ajudar com isso?
To enable extensions, verify that they are enabled in your .ini files:
- /usr/local/etc/php/conf.d/custom.ini
- /usr/local/etc/php/conf.d/docker-fpm.ini
- /usr/local/etc/php/conf.d/docker-php-ext-bcmath.ini
- /usr/local/etc/php/conf.d/docker-php-ext-exif.ini
- /usr/local/etc/php/conf.d/docker-php-ext-gd.ini
- /usr/local/etc/php/conf.d/docker-php-ext-pcntl.ini
- /usr/local/etc/php/conf.d/docker-php-ext-pdo_mysql.ini
- /usr/local/etc/php/conf.d/docker-php-ext-redis.ini
- /usr/local/etc/php/conf.d/docker-php-ext-sockets.ini
- /usr/local/etc/php/conf.d/docker-php-ext-sodium.ini
Ah. Usando o dockerfile do laravel 10
![Marcos Birro Calixto](https://storage.googleapis.com/eti-academy/users/marcos-birro-calixto.png)
Olá, Marcos!
Tudo bem?
Qual o seu setup Docker?
Neste daqui, é possível customizar: https://github.com/especializati/setup-docker-laravel/blob/main/Dockerfile#L40
![Carlos Ferreira](https://storage.googleapis.com/eti-academy/users/carlos-ferreira.jpg)
Bom dia.
USei esse setip
https://github.com/especializati/curso-de-laravel-10
![Marcos Birro Calixto](https://storage.googleapis.com/eti-academy/users/marcos-birro-calixto.png)
Mesmo caso, tem o arquivo .ini disponível, só atualizar e recriar o container:
https://github.com/especializati/curso-de-laravel-10/blob/main/docker/php/custom.ini
docker compose up -d --build app
![Carlos Ferreira](https://storage.googleapis.com/eti-academy/users/carlos-ferreira.jpg)
conseguir usar o excel aqui com o dockerfile
# Install PHP extensions
RUN docker-php-ext-install soap
RUN docker-php-ext-install gd
RUN docker-php-ext-install bcmath
RUN docker-php-ext-install zip
ai adiciona o que precisa
![Itamar chaves](https://academy.especializati.com.br/assets/site/imgs/no-image.png)
Boa Itamar!!
![Carlos Ferreira](https://storage.googleapis.com/eti-academy/users/carlos-ferreira.jpg)
Bom dia.
TEntei colocar no custom.ini e não está funcionando:
E quando tento instalar Itamar como você disse está dando de permissão no docker:
yourusername@ed38901074e9:/var/www$ docker-php-ext-install zip
mkdir: cannot create directory '/usr/src/php': Permission denied
NEm o sudo consigo instalar!!!
![Marcos Birro Calixto](https://storage.googleapis.com/eti-academy/users/marcos-birro-calixto.png)
Ah, não alterei o username no dockerfile
![Marcos Birro Calixto](https://storage.googleapis.com/eti-academy/users/marcos-birro-calixto.png)
É, mesmo alterando o user para meu usuário continua negando permissão para instalar os arquivos.
como eu dou permissão ao meu usuário para criar pastas e etc dentro do container?
![Marcos Birro Calixto](https://storage.googleapis.com/eti-academy/users/marcos-birro-calixto.png)
E guando executo php --ini dá o seguinte abaixo além de trazer as extensões que realmetne estão instaladas
Warning: PHP Startup: Unable to load dynamic library 'php_zip' (tried: /usr/local/lib/php/extensions/no-debug-non-zts-20230831/php_zip (/usr/local/lib/php/extensions/no-debug-non-zts-20230831/php_zip: cannot open shared object file: No such file or directory), /usr/local/lib/php/extensions/no-debug-non-zts-20230831/php_zip.so (/usr/local/lib/php/extensions/no-debug-non-zts-20230831/php_zip.so: cannot open shared object file: No such file or directory)) in Unknown on line 0
![Marcos Birro Calixto](https://storage.googleapis.com/eti-academy/users/marcos-birro-calixto.png)
Uma vez que a imagem está criada, não é possível (nem recomendado) instalar nada.
Inclua no seu Dockerfile estes comandos, isso vai habilitar as extensões que precisa para o seu ambiente Docker funcionar.
![Carlos Ferreira](https://storage.googleapis.com/eti-academy/users/carlos-ferreira.jpg)
Bom dia.
Fiz uma instação do setup 11 do zero.
Coloquei as informação no custom.ini
...
O que mais eu devo fazer? Estou pesquisando na internet mas não acho a solução!
![Marcos Birro Calixto](https://storage.googleapis.com/eti-academy/users/marcos-birro-calixto.png)
Tentei alterar o caminho no custom.ini mas só vem assim:
Warning: PHP Startup: Unable to load dynamic library '/usr/local/etc/php/conf.d/php_zlib' (tried: /usr/local/etc/php/conf.d/php_zlib (/usr/local/etc/php/conf.d/php_zlib: cannot open shared object file: No such file or directory), /usr/local/lib/php/extensions/no-debug-non-zts-20230831//usr/local/etc/php/conf.d/php_zlib.so (/usr/local/lib/php/extensions/no-debug-non-zts-20230831//usr/local/etc/php/conf.d/php_zlib.so: cannot open shared object file: No such file or directory)) in Unknown on line 0
Configuration File (php.ini) Path: /usr/local/etc/php
Loaded Configuration File: (none)
Scan for additional .ini files in: /usr/local/etc/php/conf.d
Additional .ini files parsed: /usr/local/etc/php/conf.d/custom.ini,
/usr/local/etc/php/conf.d/docker-fpm.ini,
/usr/local/etc/php/conf.d/docker-php-ext-bcmath.ini,
/usr/local/etc/php/conf.d/docker-php-ext-exif.ini,
/usr/local/etc/php/conf.d/docker-php-ext-gd.ini,
/usr/local/etc/php/conf.d/docker-php-ext-pcntl.ini,
/usr/local/etc/php/conf.d/docker-php-ext-pdo_mysql.ini,
/usr/local/etc/php/conf.d/docker-php-ext-redis.ini,
/usr/local/etc/php/conf.d/docker-php-ext-sockets.ini,
/usr/local/etc/php/conf.d/docker-php-ext-sodium.ini
![Marcos Birro Calixto](https://storage.googleapis.com/eti-academy/users/marcos-birro-calixto.png)
E no build dos containers está passando o custom.ini
=> [app stage-0 10/10] COPY docker/php/custom.ini /usr/local/etc/php/conf.d/custom.ini
![Marcos Birro Calixto](https://storage.googleapis.com/eti-academy/users/marcos-birro-calixto.png)
Incluiu as extensões no Dockerfile e fez o build novamente?
docker compose up -d --build app
![Carlos Ferreira](https://storage.googleapis.com/eti-academy/users/carlos-ferreira.jpg)
Boa noite
Sim. Fiz isso!
![Marcos Birro Calixto](https://storage.googleapis.com/eti-academy/users/marcos-birro-calixto.png)
Não, isso é no arquivo .ini
No arquivo Dockerfile precisa habilitar as extensões, igual o Itamar te passou!
![Carlos Ferreira](https://storage.googleapis.com/eti-academy/users/carlos-ferreira.jpg)
Bom dia. Entendi.
Inclui todos que preciso para instalar o excel no dockerfile assim:
![Marcos Birro Calixto](https://storage.googleapis.com/eti-academy/users/marcos-birro-calixto.png)
Inclui nas insytalações assim
![Marcos Birro Calixto](https://storage.googleapis.com/eti-academy/users/marcos-birro-calixto.png)
Fiz assim também e não deu
![Marcos Birro Calixto](https://storage.googleapis.com/eti-academy/users/marcos-birro-calixto.png)
Precisa estar logado para conseguir responder a este ticket!
Clique Aqui Para Entrar!