All Projects → utensils → docker-opengl

utensils / docker-opengl

Licence: MIT license
Multi-Arch Docker - Mesa 3D OpenGL Software Rendering (Gallium) - LLVMpipe, and OpenSWR Drivers

Programming Languages

Dockerfile
14818 projects
Makefile
30231 projects
shell
77523 projects

Projects that are alternatives of or similar to docker-opengl

alpine-qbittorrent-openvpn
qBittorrent docker container with OpenVPN client running as unprivileged user on alpine linux
Stars: ✭ 230 (+238.24%)
Mutual labels:  docker-container, alpine, armv7, arm64
alpine-php-fpm
Lightweight and optimised PHP-FPM (PHP 7.4, 8.0, 8.1) Docker images with essential extensions on top of latest Alpine Linux.
Stars: ✭ 53 (-22.06%)
Mutual labels:  alpine, armv7, arm64
Pieman
Script for creating custom OS images for single-board computers
Stars: ✭ 149 (+119.12%)
Mutual labels:  alpine, armv7, arm64
docker-nagios
Docker image for Nagios Core in Alpine Linux with basic plugins, available for x86, x64 , ARM v6, ARM v7 and ARM64.
Stars: ✭ 33 (-51.47%)
Mutual labels:  alpine, armv7, arm64
retro-ngon
A well-featured retro-oriented 3D software renderer for the HTML5 canvas.
Stars: ✭ 30 (-55.88%)
Mutual labels:  software-rendering, rendering
Docker4php
Docker-based PHP stack
Stars: ✭ 210 (+208.82%)
Mutual labels:  alpine, arm64
Tinyrenderer
A brief computer graphics / rendering course
Stars: ✭ 11,776 (+17217.65%)
Mutual labels:  software-rendering, rendering
Uwsgi Nginx Flask Docker
Docker image with uWSGI and Nginx for Flask applications in Python running in a single container. Optionally with Alpine Linux.
Stars: ✭ 2,607 (+3733.82%)
Mutual labels:  docker-container, alpine
Docker4wordpress
Docker-based WordPress stack
Stars: ✭ 607 (+792.65%)
Mutual labels:  alpine, arm64
docker-terraform-docs
Alpine-based multistage-build version of terraform-docs and terraform-docs-replace in multiple versions to be used for CI and other reproducible automations
Stars: ✭ 59 (-13.24%)
Mutual labels:  docker-container, alpine
Iotwifi
Raspberry Pi (arm) wifi configuration container. Configure and control wifi connectivity with a JSON based REST api.
Stars: ✭ 236 (+247.06%)
Mutual labels:  docker-container, armv7
nine
Gallium Nine Standalone
Stars: ✭ 50 (-26.47%)
Mutual labels:  mesa, gallium
discolix
distroless arm docker images
Stars: ✭ 22 (-67.65%)
Mutual labels:  armv7, arm64
Alpine Mariadb
MariaDB running on Alpine Linux [Docker]
Stars: ✭ 117 (+72.06%)
Mutual labels:  alpine, arm64
Herebedragons
A basic 3D scene implemented with various engines, frameworks or APIs.
Stars: ✭ 1,616 (+2276.47%)
Mutual labels:  software-rendering, rendering
Docker4drupal
Docker-based Drupal stack
Stars: ✭ 1,045 (+1436.76%)
Mutual labels:  alpine, arm64
docker-aws-s3-sync
Docker container to sync a folder to Amazon S3
Stars: ✭ 21 (-69.12%)
Mutual labels:  docker-container, alpine
how-to-optimize-gemm
row-major matmul optimization
Stars: ✭ 288 (+323.53%)
Mutual labels:  armv7, arm64
docker4ruby
Docker-based Ruby stack (works for Rails)
Stars: ✭ 27 (-60.29%)
Mutual labels:  alpine, arm64
gitlab-runner
Gitlab Runner on Alpine Linux [Docker]
Stars: ✭ 17 (-75%)
Mutual labels:  alpine, arm64

Multi-Arch Docker - Mesa 3D OpenGL Software Rendering (Gallium) - LLVMpipe, and OpenSWR Drivers

CircleCI Docker Automated build Docker Pulls Docker Stars

About

Minimal Docker container bundled with the Mesa 3D Gallium Drivers: LLVMpipe & OpenSWR, enabling OpenGL support inside a Docker container without the need for a GPU.

Features

  • Alpine Linux 3.12
  • LLVMpipe Driver (Mesa 20.0.6)
  • OpenSWR Driver (Mesa 20.0.6)
  • OSMesa Interface (Mesa 20.0.6)
  • softpipe - Reference Gallium software driver
  • swrast - Legacy Mesa software rasterizer
  • Xvfb - X Virtual Frame Buffer

Docker Images

Please note there are images available for Alpine versions 3.10, 3.11 as well. Please see all available tags on DockerHub

Image Description Architectures Base Image
utensils/opengl:latest Latest Mesa version amd64, 386, arm64, arm/v7 alpine:3.12
utensils/opengl:stable Stable Mesa version (Personally Tested) amd64, 386, arm64, arm/v7 alpine:3.12
utensils/opengl:20.0.6 Mesa version 20.0.6 amd64, 386, arm64, arm/v7 alpine:3.12
utensils/opengl:19.0.8 Mesa version 19.0.8 amd64 alpine:3.10
utensils/opengl:18.3.6 Mesa version 18.3.6 amd64 alpine:3.10
utensils/opengl:18.2.8 Mesa version 18.2.8 amd64 alpine:3.10

Building

This image can be built locally using the supplied Makefile

Make default image (stable):

make

Make latest image:

make latest

Make all images:

make all

Usage

This image is intended to be used as a base image to extend from. One good example of this is the Envisaged project which allows for quick and easy Gource visualizations from within a Docker container.

Extending from this image.

FROM utensils/opengl:20.0.6
COPY ./MyAppOpenGLApp /AnywhereMyHeartDesires
RUN apk add --update my-deps...

Environment Variables

The following environment variables are present to modify rendering options.

High level settings

Variable Default Value Description
XVFB_WHD 1920x1080x24 Xvfb demensions and bit depth.
DISPLAY :99 X Display number.
LIBGL_ALWAYS_SOFTWARE 1 Forces Mesa 3D to always use software rendering.
GALLIUM_DRIVER llvmpipe Sets OpenGL Driver llvmpipe, swr, softpipe, and swrast

Lower level settings / tweaks

Variable Default Value Description
LP_NO_RAST false LLVMpipe - If set LLVMpipe will no-op rasterization
LP_DEBUG "" LLVMpipe - A comma-separated list of debug options is accepted
LP_PERF "" LLVMpipe - A comma-separated list of options to selectively no-op various parts of the driver.
LP_NUM_THREADS "" LLVMpipe - An integer indicating how many threads to use for rendering. Zero (0) turns off threading completely. The default value is the number of CPU cores present.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].