Hello guys,
I need to install several docker dependencies for composer with my pipeline but I'm getting the errors below:
+ composer install
Installing dependencies from lock file (including require-dev)
Verifying lock file contents can be installed on current platform.
Your lock file does not contain a compatible set of packages. Please run composer update.
- Root composer.json requires PHP extension ext-amqp * but it is missing from your system. Install or enable PHP's amqp extension.
Problem 2
- Root composer.json requires PHP extension ext-bcmath * but it is missing from your system. Install or enable PHP's bcmath extension.
Problem 3
- php-amqplib/php-amqplib is locked to version v3.6.2 and an update of this package was not requested.
- php-amqplib/php-amqplib v3.6.2 requires ext-sockets * -> it is missing from your system. Install or enable PHP's sockets extension.
Problem 4
- php-amqplib/php-amqplib v3.6.2 requires ext-sockets * -> it is missing from your system. Install or enable PHP's sockets extension.
- php-amqplib/rabbitmq-bundle 2.16.0 requires php-amqplib/php-amqplib ^2.12.2|^3.0 -> satisfiable by php-amqplib/php-amqplib[v3.6.2].
- php-amqplib/rabbitmq-bundle is locked to version 2.16.0 and an update of this package was not requested.
To enable extensions, verify that they are enabled in your .ini files:
- /usr/local/etc/php/conf.d/docker-fpm.ini
- /usr/local/etc/php/conf.d/docker-php-ext-sodium.ini
You can also run `php --ini` in a terminal to see which files are used by PHP in CLI mode.
Alternatively, you can run Composer with `--ignore-platform-req=ext-amqp --ignore-platform-req=ext-bcmath --ignore-platform-req=ext-sockets` to temporarily ignore these required extensions.
I use php:8.2.20-fpm-bullseye because there is php 8.2 support. What I did so far is to try the installation with:
apt install php8.2-amqp
Hi Ivo and welcome to the community!
Pipelines builds run in Docker containers. For every step of your build, a Docker container starts (the build container) using the image you have specified in your bitbucket-pipelines.yml file. The repo is cloned in this container, and then the commands of the step's script are executed.
Since you are using php:8.2.20-fpm-bullseye, the Docker container where your build runs uses the following Dockerhub image:
This Docker image is based on Debian 11 (bullseye), so the question is how you install these extensions in a Docker container that uses Debian 11.
I suggest reaching out to a PHP-specific forum for help with how to install these extensions in Debian 11.
You can then debug your pipeline locally using the following guide:
When you have a command and build that works locally following this guide, it should work in Pipelines as well.
Kind regards,
Theodora
Validate your expertise in managing Jira Service Projects for Cloud. Master configuration, optimize workflows, and manage users seamlessly. Earn global 🗺️ recognition and advance your career as a trusted Jira Service management expert.
Get Certified! ✍️Online forums and learning are now in one easy-to-use experience.
By continuing, you accept the updated Community Terms of Use and acknowledge the Privacy Policy. Your public name, photo, and achievements may be publicly visible and available in search engines.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.