Commit Graph

9 Commits

Author SHA1 Message Date
Joshua T.
5a3430bbe3 Correctly tag latest built docker image (#1635)
Additionally removes the `alias` and `only_alias` arguments and adds a
single `tag` argument - this makes it clear about the tag being pushed
to.

Fixes: #1631
2025-11-27 19:32:52 +00:00
Joshua T.
44f11eac54 Build and push multi-platform docker image (#1567)
This PR adds the `publish-docker-image-multiplatform` CI job step that
pushes a multi-platform docker image when a new tag is created. #1211

Unfortunately, this is not as simple as pushing two images targeting
different platforms to the same tag. There are a couple of ways to
create a multi-platform image:
- Using `docker buildx` to build images for all platforms. To do this
images targeting non-native platforms would need to be built using QEMU
(slower), a remote machine or cross-compilation.
- Building and publishing platform-specific images
`emscripten/emsdk-x64`, `emscripten/emsdk-arm64` and then creating a
manifest that links to these images. This is the simpler solution to
implement, and is what this PR does.

Tested with CircleCI on my fork. See the pushed images at
[radiantly/emsdk ·
DockerHub](https://hub.docker.com/r/radiantly/emsdk/tags)
2025-09-25 10:51:45 -07:00
Sam Clegg
44bf7cfbe6 CI: Build latest docker image rather than tot (#1359)
This means that CI run that update `latest` actually test the thing
we are about to ship.

We recently had a case where `latest` was broken but `tot` was fixes
and we accidentally shipped a broken SDK version (#1353).
2024-03-14 09:45:41 -07:00
Jamie
b54a6b662f Auto-publish Arm64 images when emscripten-releases-tags.json is updated (#1231)
Add job to conditionally build arm64 images when emscripten-releases-tags.json updated
2023-12-03 21:11:09 -08:00
Kleis Auke Wolthuizen
e28e47659c Docker: use a entrypoint script (#1227)
In favor of `/etc/bash.bashrc`, which is only read for interactive
shells.
2023-07-06 07:44:01 -07:00
Kleis Auke Wolthuizen
645d276b5c Docker improvements (#571)
- Copy the current checkout to the Dockerfile.
- Add .dockerignore to exclude files while copying.
- Test tip-of-tree build within CI.
- Run the test suite outside the Docker image.
- Perform extra sanity tests.
- Switch to make commands for CircleCI.
- Improve Docker README.
2020-09-02 10:50:52 -07:00
Piotr Paczkowski (trzeci.eu)
ede26f1709 Add host network for building image (#514)
Without --network host It's impossible to build images
2020-06-04 13:02:17 -07:00
Nikolas Garofil
4dce416efa Docker fixes and updates (#461)
Dockerfile:
- Use the most recent stable debian (buster) instead of the previous one
- Build version 1.39.11 by default instead of 1.38.43
- Fix small typo in the comments

Makefile and README.MD: Fix incorrect name of image on dockerhub.
2020-04-06 08:58:16 -07:00
Piotr Paczkowski (trzeci.eu)
c56422590b Added dockerfiles form trzeci/emscripten-docker (#368)
As a continuation from: https://github.com/emscripten-core/emscripten/issues/8742

This PR provides adopted Dockerfile from https://github.com/trzecieu/emscripten-docker/blob/master/docker/trzeci/emscripten-fastcomp/Dockerfile which supports builds:
  * fastcomp
  * upstream

Features:
* An image can be build with fastcomp and upstream version of Emscripten SDK
* It applies some extra size optimizations (that might be removed in sake of clarity / stability)
* It creates conventional `1000:1000` user `emscripten`
* It creates extra entrypoint that mitigates running as non-root user (Some context: https://trzeci.eu/fixing-permission-of-files-created-from-docker/)
* It has simple-stupid tests performed during building
2019-10-11 11:21:47 -07:00