加載 docker-compose up 時,wordpress 會加載到 url 上,但 mysqli_connect 函數由于沒有擴展名而未定義。我試圖在 fpm 圖像下添加以下內容命令:“docker-php-ext-install mysqli”我試圖將 Dockerfile 添加到 docker-compose.yml 文件的目錄中,其中包含version: "3"services: #database db: image: mysql:5.7 volumes: - db_data:/var/lib/mysql restart: always environment: MYSQL_ROOT_PASSWORD: wordpress MYSQL_DATABASE: wordpress MYSQL_USER: wordpress MYSQL_PASSWORD: wordpress networks: - wpsite # webserver nginx: image: nginx:latest ports: - "8080:80" links: - fpm volumes: - /Users/connergesbocker/Github/cbgesbocker/dotfiles/root/etc/nginx/conf.d/village.conf:/etc/nginx/conf.d/village.conf - /Users/connergesbocker/WordPress:/WordPress networks: - wpsite # phpmyadmin phpmyadmin: depends_on: - db image: phpmyadmin/phpmyadmin restart: always ports: - "8888:8888" environment: PMA_HOST: db MYSQL_ROOT_PASSWORD: wordpress networks: - wpsite fpm: image: php:5.6.20-fpm ports: - "90:9000" # command: "docker-php-ext-install mysqli" links: - db volumes: - /Users/connergesbocker/WordPress:/WordPress working_dir: "/" networks: - wpsitenetworks: wpsite:volumes: db_data:```
2 回答

呼如林
TA貢獻1798條經驗 獲得超3個贊
您可以自定義您的 dockerfile 并在其中添加安裝:
Dockerfile:
FROM php:5.6.20-fpm
RUN docker-php-ext-install mysqli
docker-compose.yaml 的一部分:
fpm:
build: .
image: myphp:1
ports:
- "90:9000"
# command: "docker-php-ext-install mysqli"
links:
- db
volumes:
- /Users/connergesbocker/WordPress:/WordPress
working_dir: "/"
networks:
- wpsite

慕田峪7331174
TA貢獻1828條經驗 獲得超13個贊
您的覆蓋將安裝擴展,但容器將在安裝后停止,因為php-fpm不會通過覆蓋CMD. 將命令替換為以下命令。
command:
- /bin/sh
- -c
- |
docker-php-ext-install mysqli
echo "extension installed.....starting php-fpm........................................"
php-fpm
- 2 回答
- 0 關注
- 214 瀏覽
添加回答
舉報
0/150
提交
取消