maven:3.8.1-openjdk-8 was working but includes python 2
Getting an error saying Python 3 is now required.
What image has java 8, maven, and python 3?
Hi Bruce,
There is no requirement to use a specific Docker image as a build container with the pipe. When a pipe is executed, there is another Docker container (the pipe's container) running inside the build container of the step (Docker-in-Docker). The pipe's container should have all the tools it needs to run.
If another command of your build requires python 3, then you would indeed need to use a container with python 3 or install python 3 during the build by including the necessary commands in that step in your bitbucket-pipelines.yml.
For the build container, we support public and private Docker images including those hosted on Docker Hub, AWS, GCP, Azure, and self-hosted registries accessible on the internet. Please keep in mind that Atlassian neither owns nor maintains every single image in these registries, so I don't know which image would meet your requirements.
I did check, though, a different version of the image you are using, specifically maven:3.8.3-openjdk-8. If I use this image as a build container and add the following command in my yml file:
- python3 --version
it looks like Python 3 is installed, as the output is
+ python3 --version
Python 3.9.2
If you are familiar with Docker, we do recommend creating and using your own custom Docker image that includes only the tools and the versions you need, in order to keep it lightweight:
Kind regards,
Theodora
Thank you very much!
Docker image maven:3.8.3-openjdk-8 got me back up and running.
As a solo, full stack, developer of 4 web applications, taking the time to build my own docker images for this purpose is something that would slow me down too much.
I very much appreciate how BitBucket pipelines increases my productivity dramatically.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Bruce,
Thank you for the update and you are very welcome!
I understand that building your own Docker image can be time-consuming. It's good to hear that the image maven:3.8.3-openjdk-8 works for you and that pipelines increases your productivity.
Please feel free to reach out if you ever need anything else!
Kind regards,
Theodora
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Java 8 support in Google App Engine has been discontinued. Java 11 support will be discontinued in October. I am now trying to use Java 17 but I find that
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Bruce,
As I explained in my initial answer a year ago, there is no requirement to use a specific Docker image as a step's build container with the pipe. A pipe starts a separate Docker container and it should run regardless of the step's build container. So, it's not clear how the absence of Python in the build container affects the pipe.
If you are experiencing issues with the pipe, then:
Kind regards,
Theodora
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
I believe that the pipe atlassian/google-app-engine-deploy invokes gcloud and gcloud requires python.
I finally broke down and created my own Docker image that works.
Here is the Dockerfile:
FROM maven:3.9.8-eclipse-temurin-17
RUN apt-get update \
&& apt-get install -y python3 --no-install-recommends \
&& rm -rf /var/lib/apt/lists/*
See https://hub.docker.com/repository/docker/itipsdev/docker-java17-pipeline/general
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.