← Discussions Feel++

Announcements

Feel++ Docker Support for x86-64 and ARM64 Architectures

Lire et commenter sur GitHub ↗

Texte original de GitHub, conservé dans sa langue de publication. Ce texte décrit la situation à sa date de publication. Les commentaires sont disponibles sur GitHub.

Feel++ Docker Support for x86-64 and ARM64 Architectures

We have updated our Docker images to support a wider range of systems, ensuring that Feel++ can be run on the most commonly used architectures and Linux distributions.

This work paves the way for the availability of Feel++ on a wide range of architectures, in particular, arm support is needed for the future European exascale machine hosted by Germany, Jupiter, that should be available later this year. This work also enables running on Apple M chips.

Supported Architectures and Distributions

Feel++ Docker images are now available for the following specifications:

  • Architectures:

    • x86-64
    • ARM64
  • Distributions:

    • Ubuntu: 20.04 (ubuntu-20.04), 22.04 (ubuntu-22.04), 24.04 (ubuntu-24.04)
    • Debian: Bookworm (debian-12)

Docker Images for Feel++ Environment

The feelpp-env Docker image is set up with all the necessary components to develop and run Feel++ applications. It's ready to be pulled and used as follows:

# Pull the Feel++ environment image for Ubuntu 22.04
docker pull ghcr.io/feelpp/feelpp-env:ubuntu-22.04

# For other distributions, replace the tag accordingly.

Running the Docker Image

To start working with the Feel++ environment, run the following command:

docker run --rm -it ghcr.io/feelpp/feelpp-env:<tag> bash

Be sure to substitute <tag> with the tag that matches your desired distribution, such as ubuntu-20.04, ubuntu-24.04, or debian-12.

Certainly, here's an additional section for your GitHub discussion post that includes information on using the docker inspect command to verify architecture, as well as a section on using devcontainer to compile Feel++ within these Docker images.


Verifying Image Architecture with Docker Inspect

To ensure you're using the correct image for your architecture, you can use the docker inspect command. This provides detailed information about your Docker image, including the architecture. Run the following command in your terminal:

docker inspect --format='{{.Architecture}}' ghcr.io/feelpp/feelpp-env:<tag>

Replace <tag> with the tag for your distribution, and you will get the architecture of the image, ensuring it matches your target environment.

Development Containers for Compiling Feel++

For developers looking to compile Feel++ within a Docker environment, we provide support for devcontainer in Feel++ git repository. This allows you to use a Docker container as a full-featured development environment.

To get started, you'll need to have the devcontainer extension installed in your IDE (such as Visual Studio Code). Then, you can simply use the Feel++ Docker images as the base for your devcontainer configuration.

Simply install the ms-vscode-remote.remote-containers extension (Dev Container by Microsoft) for Visual Studio code and using the Command Palette use Dev Containers: Reopen in Containers.

The devcontainer.json file is placed in the .devcontainer directory at the root of your project. When you open the project folder in your IDE, it will automatically set up the Feel++ development environment inside a Docker container.

Continuous Updates

The Feel++ Docker images are kept up-to-date through our automated build system. You can always find the latest version of our images on our GitHub packages.

Community Input

We value community feedback on our Docker images. If you have any questions, issues, or suggestions, please share them with us on our GitHub discussions page.

Funding

This work is part of the European project CoE Hidalgo2 in order to provide Feel++ on a wider range of architectures. Funded by the European Union. This work has received funding from the European High Performance Computing Joint Undertaking (JU) and Poland, Germany, Spain, Hungary, France, Greece under grant agreement number: 101093457. This publication expresses the opinions of the authors and not necessarily those of the EuroHPC JU and Associated Countries which are not responsible for any use of the information contained in this publication.

Thank you for being a part of the Feel++ community.