# New slim Docker images

**URL:** <https://forum.castle-engine.io/t/new-slim-docker-images/1090>\
**Category:** News\
**Created:** [February 18, 2024, 1:06pm UTC](https://forum.castle-engine.io/t/new-slim-docker-images/1090 "2024-02-18T13:06:57Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![michalis](https://forum.castle-engine.io/user_avatar/forum.castle-engine.io/michalis/32/3_2.png) [@michalis](https://forum.castle-engine.io/u/michalis)\
**Post date:** [February 18, 2024, 1:06pm UTC](https://forum.castle-engine.io/t/new-slim-docker-images/1090/1 "2024-02-18T13:06:57Z")

</div>

| [![Castle Game Engine and Docker](https://forum.castle-engine.io/uploads/default/original/2X/7/72fe227d37add6c38e1a889025452b077dedf4a7.png)](https://castle-engine.io/wp/wp-content/uploads/2024/02/combined_docker_cge.png "Castle Game Engine and Docker") |

We feature a set of [Docker](https://www.docker.com/) images that contain a ready Linux machine with _Castle Game Engine_ and all our important dependencies: [FPC (cross-compilers for most important platforms — Linux/x86\_64, Windows/x86\_64, Windows/i386, Android/Arm, Android/Aarch64)](https://www.freepascal.org/), [Lazarus](https://www.lazarus-ide.org/), Android SDK, [various texture tools](https://castle-engine.io/creating_data_auto_generated_textures.php). They are useful to build applications using CGE, both interactively and from various _continuous integration/delivery_ software, like [GitHub Actions](https://castle-engine.io/github_actions), [GitLab CI](https://castle-engine.io/gitlab_ci), [Jenkins](https://castle-engine.io/jenkins).

Their main documentation is [our Docker usage documentation](https://castle-engine.io/docker) and [our Docker image at Docker hub](https://hub.docker.com/r/kambi/castle-engine-cloud-builds-tools/).

We have reorganized our Docker images recently. We no longer serve big Docker images with all supported FPC versions. Instead, the Docker images now provide a single FPC version (like latest stable — 3.2.2 now) and alternative Docker images provide alternative FPC versions.

The main practical reason behind this was that GitHub tightens their requirements for the disk space allowed for (free) [GitHub Actions](https://castle-engine.io/github_actions) jobs. We have been “on the edge” with regards to their allowed disk usage, because our previous Docker images have been quite large, which was mainly caused by multiple FPC/Lazarus installations inside (each one with units for multiple platforms). And most people do not need these alternative FPC versions, we just recommend to use latest FPC stable. So it seems simpler to split the Docker images into more, smaller ones.

New Docker image names:

- `cge-none` : our tools, including latest stable FPC (3.2.2 now), without CGE.
- `cge-stable` : like cge-none, with added latest CGE stable, 7.0-alpha.2 now.

- `cge-unstable` : like cge-none, with added latest CGE unstable, latest CGE GitHub commit that passed automated checks.

- `cge-none-fpc300` : like cge-none, but FPC 3.0.0.

- `cge-none-fpc331` : like cge-none, but FPC 3.3.1, recent FPC version from FPC GitLab “main” branch. 

This [article describing BuildKit features to have multiple variants in a single Dockerfile](https://medium.com/@tonistiigi/advanced-multi-stage-build-patterns-6f741b852fae) was immensely useful to make this work.

As always, you can take a look at our [Docker setup scripts](https://github.com/castle-engine/castle-engine-cloud-builds-tools). The resulting images [are on Docker hub](https://hub.docker.com/r/kambi/castle-engine-cloud-builds-tools/).
