oven-sh / bun

Incredibly fast JavaScript runtime, bundler, test runner, and package manager – all in one
https://bun.sh
Other
73.25k stars 2.69k forks source link

Docker container `oven/bun:1-debian` missing Python? #13985

Closed randompixel closed 4 days ago

randompixel commented 4 days ago

What version of Bun is running?

No response

What platform is your computer?

No response

What steps can reproduce the bug?

https://github.com/oven-sh/bun/blob/b66d622c56b883307428067819c77347824ecec3/dockerhub/debian/Dockerfile#L16C8-L16C14 on main suggests that python3 package should be installed on Debian Docker images, such as oven/bun:1-debian or oven/bun:debian but it doesn't appear to be?

docker pull oven/bun:1-debian
docker run -it oven/bun:1-debian /bin/sh

What is the expected behavior?

Python to be installed and available to use

# python3 --version
Python 3.9.2

What do you see instead?

# python3 -V
/bin/sh: 4: python3: not found
# apt update && apt install python3
Get:1 http://deb.debian.org/debian bullseye InRelease [116 kB]
Get:2 http://deb.debian.org/debian-security bullseye-security InRelease [27.2 kB]
Get:3 http://deb.debian.org/debian bullseye-updates InRelease [44.1 kB]
Get:4 http://deb.debian.org/debian bullseye/main arm64 Packages [7955 kB]
Get:5 http://deb.debian.org/debian-security bullseye-security/main arm64 Packages [285 kB]
Get:6 http://deb.debian.org/debian bullseye-updates/main arm64 Packages [16.3 kB]
Fetched 8443 kB in 2s (4592 kB/s)
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
1 package can be upgraded. Run 'apt list --upgradable' to see it.
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
  ca-certificates libexpat1 libgpm2 libmpdec3 libncursesw6 libpython3-stdlib libpython3.9-minimal libpython3.9-stdlib libreadline8 libsqlite3-0
  media-types openssl python3-minimal python3.9 python3.9-minimal readline-common
Suggested packages:
  gpm python3-doc python3-tk python3-venv python3.9-venv python3.9-doc binutils binfmt-support readline-doc
The following NEW packages will be installed:
  ca-certificates libexpat1 libgpm2 libmpdec3 libncursesw6 libpython3-stdlib libpython3.9-minimal libpython3.9-stdlib libreadline8 libsqlite3-0
  media-types openssl python3 python3-minimal python3.9 python3.9-minimal readline-common
0 upgraded, 17 newly installed, 0 to remove and 1 not upgraded.
Need to get 7237 kB of archives.
After this operation, 24.3 MB of additional disk space will be used.
Do you want to continue? [Y/n]

Additional information

No response

randompixel commented 4 days ago

Oh, looking further down it copies the bun installed over into a clean copy of Debian.

https://github.com/oven-sh/bun/blob/main/dockerhub/debian/Dockerfile#L59-L62

Is there a way we can get one of the containers to have Python in it by default though for running in Pipelines where packages get built from source using Python such as canvas?

randompixel commented 4 days ago

nvm, I will just create a self-hosted version that contains all the packages I need to get this built