Кемеровские программисты php общаются здесь
Anonymous
Ошибка «Нет доступных выпусков» при установке pecl в Docker
Сообщение
Anonymous » 30 апр 2024, 17:25
Я пытаюсь установить пакет Xdebug или Redis в контейнер Docker из pecl. Установка не удалась и возвращает ошибку:
Для пакета «pecl.php.net/xdebug» нет доступных выпусков.
Пример для Xdebug:
https://pecl.php.net/package/xdebug/3.1.0
Мой docker-compose.yaml< /p>
Код: Выделить всё
version: '3'
networks:
app-network:
services:
site:
build:
context: .
dockerfile: nginx.dockerfile
container_name: my_nginx
ports:
- "8082:80"
- "443:443"
volumes:
- ./src:/var/www/html
depends_on:
- php
- db
- redis
networks:
- app-network
db:
image: percona
container_name: my_db
restart: on-failure
tty: true
ports:
- "3314:3306"
volumes:
- ./percona:/var/lib/percona
environment:
MYSQL_DATABASE: mydb
MYSQL_USER: me
MYSQL_PASSWORD: 123
MYSQL_ROOT_PASSWORD: 456
SERVICE_TAGS: dev
SERVICE_NAME: db
networks:
- app-network
php:
build:
context: .
dockerfile: php.dockerfile
container_name: my_php
volumes:
- ./src:/var/www/html
ports:
- "9000:9000"
networks:
- app-network
composer:
image: frojd/composer-php-7.4
container_name: my_composer
volumes:
- ./src:/var/www/html
working_dir: /var/www/html
depends_on:
- php
networks:
- app-network
redis:
image: redis:alpine
container_name: my_redis
volumes:
- ./redis:/data
restart: on-failure
command: redis-server --appendonly yes --requirepass "${REDIS_PASSWORD}"
ports:
- 6380:6379
networks:
- app-network
npm:
image: node:14.18.0
container_name: my_npm
volumes:
- ./src:/var/www/html
working_dir: /var/www/html
entrypoint: ['npm']
artisan:
build:
context: .
dockerfile: php.dockerfile
container_name: my_artisan
volumes:
- ./src:/var/www/html
depends_on:
- db
working_dir: /var/www/html
entrypoint: ['php', '/var/www/html/artisan']
networks:
- app-network
cron:
build:
context: .
dockerfile: cron.dockerfile
container_name: my_cron
volumes:
- ./src:/var/www/html
networks:
- app-network
Мой файл php.docker
Код: Выделить всё
FROM php:7.4-fpm
WORKDIR /var/www/html
RUN apt-get update && \
apt-get install ca-certificates && \
apt-get clean
RUN docker-php-ext-install pdo pdo_mysql
RUN pecl install xdebug \
&& docker-php-ext-enable xdebug \
&& echo "xdebug.remote_enable=on" >> /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini \
&& echo "xdebug.remote_host = host.docker.internal" >> /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini
В чем причина ошибки и как ее исправить?
Подробнее здесь:
https://stackoverflow.com/questions/695 ... -in-docker
1714487141
Anonymous
Я пытаюсь установить пакет Xdebug или Redis в контейнер Docker из pecl. Установка не удалась и возвращает ошибку: Для пакета «pecl.php.net/xdebug» нет доступных выпусков. Пример для Xdebug: https://pecl.php.net/package/xdebug/3.1.0 Мой docker-compose.yaml< /p> [code]version: '3' networks: app-network: services: site: build: context: . dockerfile: nginx.dockerfile container_name: my_nginx ports: - "8082:80" - "443:443" volumes: - ./src:/var/www/html depends_on: - php - db - redis networks: - app-network db: image: percona container_name: my_db restart: on-failure tty: true ports: - "3314:3306" volumes: - ./percona:/var/lib/percona environment: MYSQL_DATABASE: mydb MYSQL_USER: me MYSQL_PASSWORD: 123 MYSQL_ROOT_PASSWORD: 456 SERVICE_TAGS: dev SERVICE_NAME: db networks: - app-network php: build: context: . dockerfile: php.dockerfile container_name: my_php volumes: - ./src:/var/www/html ports: - "9000:9000" networks: - app-network composer: image: frojd/composer-php-7.4 container_name: my_composer volumes: - ./src:/var/www/html working_dir: /var/www/html depends_on: - php networks: - app-network redis: image: redis:alpine container_name: my_redis volumes: - ./redis:/data restart: on-failure command: redis-server --appendonly yes --requirepass "${REDIS_PASSWORD}" ports: - 6380:6379 networks: - app-network npm: image: node:14.18.0 container_name: my_npm volumes: - ./src:/var/www/html working_dir: /var/www/html entrypoint: ['npm'] artisan: build: context: . dockerfile: php.dockerfile container_name: my_artisan volumes: - ./src:/var/www/html depends_on: - db working_dir: /var/www/html entrypoint: ['php', '/var/www/html/artisan'] networks: - app-network cron: build: context: . dockerfile: cron.dockerfile container_name: my_cron volumes: - ./src:/var/www/html networks: - app-network [/code] Мой файл php.docker [code]FROM php:7.4-fpm WORKDIR /var/www/html RUN apt-get update && \ apt-get install ca-certificates && \ apt-get clean RUN docker-php-ext-install pdo pdo_mysql RUN pecl install xdebug \ && docker-php-ext-enable xdebug \ && echo "xdebug.remote_enable=on" >> /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini \ && echo "xdebug.remote_host = host.docker.internal" >> /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini [/code] В чем причина ошибки и как ее исправить? Подробнее здесь: [url]https://stackoverflow.com/questions/69566437/no-releases-available-error-when-installing-pecl-in-docker[/url]