Commit Graph

27 Commits

Author SHA1 Message Date
Tianon Gravi 6930d60e10 Update to Debian Trixie
I had two MIPS-related hiccups with this:
- the musl-upstream `musl-gcc` wrapper script has a bug that drops compiler arguments (patch included here; hopefully we can remove in the future?)
- QEMU couldn't run the resulting MUSL binaries until I applied an update to my binfmt magic/mask (https://bugs.debian.org/1041597, bb0811e353) - it also runs just fine on real musl hardware
2025-08-08 12:05:17 -07:00
Tianon Gravi d2ad81cd7a Remove Windows Server 2019 / 1809 2025-05-30 10:44:53 -07:00
Tianon Gravi f689a8df49 Support building on an arm64 host too
This adds a `.host-arch` symlink to build output; this doesn't get committed (for hopefully obvious reasons), but allows for things like `CMD` and `update.sh` to have a known-effective target for testing the output further in some way.

This was a mapping we already had thanks to `ARCH_TEST`, so I've also reordered our builds such that they're grouped by "host" architecture and sorted by "preference"/compatibility (with the goal that we get a more "correct" `.host-arch` symlink).
2025-02-03 12:15:59 -08:00
yosifkit 6ad8af5782
Merge pull request #121 from infosiftr/win2025
Add Windows (Nano) Server 2025 variants
2025-01-21 15:44:15 -08:00
Tianon Gravi a71acd2dfb Update to Bookworm + musl 1.2.5
Also, fix `CFLAGS` bug and add `norelro` to avoid huge size increases on some architectures. 🚀
2025-01-21 15:32:32 -08:00
Tianon Gravi 08987c71f6 Add Windows (Nano) Server 2025 variants 2025-01-21 15:10:39 -08:00
Tobias Fenster c816763efd Fix version in Windows examples 2022-03-17 07:36:47 -07:00
Tianon Gravi c6676f682a Add Windows 2022 variant 2021-08-24 14:43:18 -07:00
Tianon Gravi 584b134f74 Use "arch-test" to actively test as many binaries as the current host can support 2021-07-07 14:59:36 -07:00
Tianon Gravi 65171280ea Add explicit SHELL in Makefile 2021-03-08 17:29:13 -08:00
Larry Claman a6fdcbffb0
Add "ltsc2019" tag to example Windows one-liner (#85) 2021-02-23 10:58:45 -08:00
Tianon Gravi 7ecae69780 Convert from glibc-based binaries to musl-based binaries
The intent of the previous implementation was to avoid libc, but it turns out that just invoking a syscall without libc is complicated (see https://github.com/docker-library/hello-world/pull/62#issuecomment-568573535 for details).

On the other hand, my personal machine can cross-compile all of musl in ~30s per architecture, which is pretty reasonable, and the resulting binary sizes are only around ~10k each, and I was able to do so successfully for every architecture we currently support.
2019-12-30 16:06:25 -08:00
Tianon Gravi 837f63a4a9 Remove EOL Windows 1803-based (SAC) images
See https://docs.microsoft.com/en-us/virtualization/windowscontainers/deploy-containers/base-image-lifecycle (EOL 11/12/2019)
2019-12-09 14:31:33 -08:00
Tianon Gravi 88475d7d4c Remove nanoserver:sac2016 (EOL)
See https://hub.docker.com/r/microsoft/nanoserver:

> The Windows Server 2016-based Nano Server container base image was a Semi-Annual Channel (SAC) release and received its final update on October 23rd, 2018.
2019-04-12 13:46:47 -07:00
Tianon Gravi 070ec65daf Remove Windows 1709 (EOL)
https://twitter.com/thaJeztah/status/1116392901267927041
2019-04-11 16:23:21 -07:00
Tianon Gravi 9c93e37114 Add Windows 1809 support 2018-12-31 12:59:44 -08:00
Tianon Gravi 7c49831fd4 Add Nano Server 1803 variants 2018-07-09 16:19:25 -07:00
Tianon Gravi d206a43516 Use new microsoft/nanoserver tags (sac2016)
See https://hub.docker.com/r/microsoft/nanoserver/ (:1709 vs :sac2016)
2017-11-22 13:39:05 -08:00
Tianon Gravi c83a065a24 Add "arch" to the produced output
```console
$ ./amd64/hello-world/hello

Hello from Docker!
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
 1. The Docker client contacted the Docker daemon.
 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
    (amd64)
 3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
 4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
 $ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker ID:
 https://cloud.docker.com/

For more examples and ideas, visit:
 https://docs.docker.com/engine/userguide/

```
2017-11-20 07:03:38 -08:00
Tianon Gravi b9c8214f52 Add microsoft/nanoserver:1709 variants 2017-11-01 11:37:30 -07:00
Tianon Gravi b63893caa6 Update Windows with a PowerShell prompt and windowsservercore 2017-09-13 11:29:17 -07:00
Tianon Gravi 7d0ee592e4 Add initial multiarchitecture support via Debian cross-compiled binaries 2017-06-13 16:17:33 -07:00
Tianon Gravi 0f30176f82 Add "nanoserver" variants using "hello.txt" + powershell 2016-11-18 09:50:16 -08:00
Tianon Gravi 85fd7ab65e Switch to the C version officially, and make some minor modifications to ensure cross-architecture compatibility is maximized 2016-06-29 16:31:30 -07:00
Tianon Gravi a2654a9266 Refactor repo to handle vanity DockerCon variant images 2016-06-28 10:58:00 -07:00
Tianon Gravi 2bf8256602 Add a new "test" Makefile target 2016-02-08 22:02:24 -08:00
Tianon Gravi e968841b4e Initial commit 2014-07-09 13:52:54 -06:00