Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/gui/lua-docker
Minimal, automated, and up-to-date Docker images for different Lua and LuaJIT versions.
https://github.com/gui/lua-docker
Last synced: 16 days ago
JSON representation
Minimal, automated, and up-to-date Docker images for different Lua and LuaJIT versions.
- Host: GitHub
- URL: https://github.com/gui/lua-docker
- Owner: GUI
- License: mit
- Created: 2018-12-10T00:21:36.000Z (almost 6 years ago)
- Default Branch: main
- Last Pushed: 2024-10-17T03:47:36.000Z (about 1 month ago)
- Last Synced: 2024-10-19T06:03:49.053Z (30 days ago)
- Language: Dockerfile
- Homepage:
- Size: 745 KB
- Stars: 70
- Watchers: 7
- Forks: 10
- Open Issues: 2
-
Metadata Files:
- Readme: README.lua.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# lua-docker
Minimal, automated, and up-to-date Docker images for different Lua versions.
Provides variants for:
- Debian, Alpine, Ubuntu, and CentOS base images
- With LuaRocksNew versions of Lua and LuaRocks should automatically be detected and trigger new docker images to built, tagged, and pushed by a daily [GitHub Actions workflow](https://github.com/GUI/lua-docker/blob/main/.github/workflows/main.yml).
## Supported Tags and Respective Dockerfile Links
- `5`, `5-bookworm`, `5-debian`, `5.4`, `5.4-bookworm`, `5.4-debian`, `5.4.7`, `5.4.7-bookworm`, `5.4.7-debian`, `debian`, `latest`: [lua-5.4/bookworm/Dockerfile](https://github.com/GUI/lua-docker/blob/main/lua-5.4/bookworm/Dockerfile)
- `5-bullseye`, `5.4-bullseye`, `5.4.7-bullseye`: [lua-5.4/bullseye/Dockerfile](https://github.com/GUI/lua-docker/blob/main/lua-5.4/bullseye/Dockerfile)
- `5-luarocks`, `5-luarocks-bookworm`, `5-luarocks-debian`, `5.4-luarocks`, `5.4-luarocks-bookworm`, `5.4-luarocks-debian`, `5.4.7-luarocks`, `5.4.7-luarocks-bookworm`, `5.4.7-luarocks-debian`, `luarocks`, `luarocks-debian`: [lua-5.4/luarocks-bookworm/Dockerfile](https://github.com/GUI/lua-docker/blob/main/lua-5.4/luarocks-bookworm/Dockerfile)
- `5-luarocks-bullseye`, `5.4-luarocks-bullseye`, `5.4.7-luarocks-bullseye`: [lua-5.4/luarocks-bullseye/Dockerfile](https://github.com/GUI/lua-docker/blob/main/lua-5.4/luarocks-bullseye/Dockerfile)
- `5-alpine`, `5-alpine3`, `5-alpine3.20`, `5.4-alpine`, `5.4-alpine3.20`, `5.4.7-alpine`, `5.4.7-alpine3`, `5.4.7-alpine3.20`, `alpine`: [lua-5.4/alpine3.20/Dockerfile](https://github.com/GUI/lua-docker/blob/main/lua-5.4/alpine3.20/Dockerfile)
- `5-alpine3.19`, `5.4-alpine3.19`, `5.4.7-alpine3.19`: [lua-5.4/alpine3.19/Dockerfile](https://github.com/GUI/lua-docker/blob/main/lua-5.4/alpine3.19/Dockerfile)
- `5-luarocks-alpine`, `5-luarocks-alpine3`, `5-luarocks-alpine3.20`, `5.4-luarocks-alpine`, `5.4-luarocks-alpine3.20`, `5.4.7-luarocks-alpine`, `5.4.7-luarocks-alpine3`, `5.4.7-luarocks-alpine3.20`, `luarocks-alpine`: [lua-5.4/luarocks-alpine3.20/Dockerfile](https://github.com/GUI/lua-docker/blob/main/lua-5.4/luarocks-alpine3.20/Dockerfile)
- `5-luarocks-alpine3.19`, `5.4-luarocks-alpine3.19`, `5.4.7-luarocks-alpine3.19`: [lua-5.4/luarocks-alpine3.19/Dockerfile](https://github.com/GUI/lua-docker/blob/main/lua-5.4/luarocks-alpine3.19/Dockerfile)
- `5-rolling`, `5.4-rolling`, `5.4.7-rolling`: [lua-5.4/rolling/Dockerfile](https://github.com/GUI/lua-docker/blob/main/lua-5.4/rolling/Dockerfile)
- `5-noble`, `5-ubuntu`, `5.4-noble`, `5.4-ubuntu`, `5.4.7-noble`, `5.4.7-ubuntu`, `ubuntu`: [lua-5.4/noble/Dockerfile](https://github.com/GUI/lua-docker/blob/main/lua-5.4/noble/Dockerfile)
- `5-luarocks-rolling`, `5.4-luarocks-rolling`, `5.4.7-luarocks-rolling`: [lua-5.4/luarocks-rolling/Dockerfile](https://github.com/GUI/lua-docker/blob/main/lua-5.4/luarocks-rolling/Dockerfile)
- `5-luarocks-noble`, `5-luarocks-ubuntu`, `5.4-luarocks-noble`, `5.4-luarocks-ubuntu`, `5.4.7-luarocks-noble`, `5.4.7-luarocks-ubuntu`, `luarocks-ubuntu`: [lua-5.4/luarocks-noble/Dockerfile](https://github.com/GUI/lua-docker/blob/main/lua-5.4/luarocks-noble/Dockerfile)
- `5.3`, `5.3-bookworm`, `5.3-debian`, `5.3.6`, `5.3.6-bookworm`, `5.3.6-debian`: [lua-5.3/bookworm/Dockerfile](https://github.com/GUI/lua-docker/blob/main/lua-5.3/bookworm/Dockerfile)
- `5.3-bullseye`, `5.3.6-bullseye`: [lua-5.3/bullseye/Dockerfile](https://github.com/GUI/lua-docker/blob/main/lua-5.3/bullseye/Dockerfile)
- `5.3-luarocks`, `5.3-luarocks-bookworm`, `5.3-luarocks-debian`, `5.3.6-luarocks`, `5.3.6-luarocks-bookworm`, `5.3.6-luarocks-debian`: [lua-5.3/luarocks-bookworm/Dockerfile](https://github.com/GUI/lua-docker/blob/main/lua-5.3/luarocks-bookworm/Dockerfile)
- `5.3-luarocks-bullseye`, `5.3.6-luarocks-bullseye`: [lua-5.3/luarocks-bullseye/Dockerfile](https://github.com/GUI/lua-docker/blob/main/lua-5.3/luarocks-bullseye/Dockerfile)
- `5-alpine3`, `5.3-alpine`, `5.3-alpine3.20`, `5.3.6-alpine`, `5.3.6-alpine3`, `5.3.6-alpine3.20`: [lua-5.3/alpine3.20/Dockerfile](https://github.com/GUI/lua-docker/blob/main/lua-5.3/alpine3.20/Dockerfile)
- `5.3-alpine3.19`, `5.3.6-alpine3.19`: [lua-5.3/alpine3.19/Dockerfile](https://github.com/GUI/lua-docker/blob/main/lua-5.3/alpine3.19/Dockerfile)
- `5-luarocks-alpine3`, `5.3-luarocks-alpine`, `5.3-luarocks-alpine3.20`, `5.3.6-luarocks-alpine`, `5.3.6-luarocks-alpine3`, `5.3.6-luarocks-alpine3.20`: [lua-5.3/luarocks-alpine3.20/Dockerfile](https://github.com/GUI/lua-docker/blob/main/lua-5.3/luarocks-alpine3.20/Dockerfile)
- `5.3-luarocks-alpine3.19`, `5.3.6-luarocks-alpine3.19`: [lua-5.3/luarocks-alpine3.19/Dockerfile](https://github.com/GUI/lua-docker/blob/main/lua-5.3/luarocks-alpine3.19/Dockerfile)
- `5.3-rolling`, `5.3.6-rolling`: [lua-5.3/rolling/Dockerfile](https://github.com/GUI/lua-docker/blob/main/lua-5.3/rolling/Dockerfile)
- `5.3-noble`, `5.3-ubuntu`, `5.3.6-noble`, `5.3.6-ubuntu`: [lua-5.3/noble/Dockerfile](https://github.com/GUI/lua-docker/blob/main/lua-5.3/noble/Dockerfile)
- `5.3-luarocks-rolling`, `5.3.6-luarocks-rolling`: [lua-5.3/luarocks-rolling/Dockerfile](https://github.com/GUI/lua-docker/blob/main/lua-5.3/luarocks-rolling/Dockerfile)
- `5.3-luarocks-noble`, `5.3-luarocks-ubuntu`, `5.3.6-luarocks-noble`, `5.3.6-luarocks-ubuntu`: [lua-5.3/luarocks-noble/Dockerfile](https://github.com/GUI/lua-docker/blob/main/lua-5.3/luarocks-noble/Dockerfile)
- `5.2`, `5.2-bookworm`, `5.2-debian`, `5.2.4`, `5.2.4-bookworm`, `5.2.4-debian`: [lua-5.2/bookworm/Dockerfile](https://github.com/GUI/lua-docker/blob/main/lua-5.2/bookworm/Dockerfile)
- `5.2-bullseye`, `5.2.4-bullseye`: [lua-5.2/bullseye/Dockerfile](https://github.com/GUI/lua-docker/blob/main/lua-5.2/bullseye/Dockerfile)
- `5.2-luarocks`, `5.2-luarocks-bookworm`, `5.2-luarocks-debian`, `5.2.4-luarocks`, `5.2.4-luarocks-bookworm`, `5.2.4-luarocks-debian`: [lua-5.2/luarocks-bookworm/Dockerfile](https://github.com/GUI/lua-docker/blob/main/lua-5.2/luarocks-bookworm/Dockerfile)
- `5.2-luarocks-bullseye`, `5.2.4-luarocks-bullseye`: [lua-5.2/luarocks-bullseye/Dockerfile](https://github.com/GUI/lua-docker/blob/main/lua-5.2/luarocks-bullseye/Dockerfile)
- `5-alpine3`, `5.2-alpine`, `5.2-alpine3.20`, `5.2.4-alpine`, `5.2.4-alpine3`, `5.2.4-alpine3.20`: [lua-5.2/alpine3.20/Dockerfile](https://github.com/GUI/lua-docker/blob/main/lua-5.2/alpine3.20/Dockerfile)
- `5.2-alpine3.19`, `5.2.4-alpine3.19`: [lua-5.2/alpine3.19/Dockerfile](https://github.com/GUI/lua-docker/blob/main/lua-5.2/alpine3.19/Dockerfile)
- `5-luarocks-alpine3`, `5.2-luarocks-alpine`, `5.2-luarocks-alpine3.20`, `5.2.4-luarocks-alpine`, `5.2.4-luarocks-alpine3`, `5.2.4-luarocks-alpine3.20`: [lua-5.2/luarocks-alpine3.20/Dockerfile](https://github.com/GUI/lua-docker/blob/main/lua-5.2/luarocks-alpine3.20/Dockerfile)
- `5.2-luarocks-alpine3.19`, `5.2.4-luarocks-alpine3.19`: [lua-5.2/luarocks-alpine3.19/Dockerfile](https://github.com/GUI/lua-docker/blob/main/lua-5.2/luarocks-alpine3.19/Dockerfile)
- `5.2-rolling`, `5.2.4-rolling`: [lua-5.2/rolling/Dockerfile](https://github.com/GUI/lua-docker/blob/main/lua-5.2/rolling/Dockerfile)
- `5.2-noble`, `5.2-ubuntu`, `5.2.4-noble`, `5.2.4-ubuntu`: [lua-5.2/noble/Dockerfile](https://github.com/GUI/lua-docker/blob/main/lua-5.2/noble/Dockerfile)
- `5.2-luarocks-rolling`, `5.2.4-luarocks-rolling`: [lua-5.2/luarocks-rolling/Dockerfile](https://github.com/GUI/lua-docker/blob/main/lua-5.2/luarocks-rolling/Dockerfile)
- `5.2-luarocks-noble`, `5.2-luarocks-ubuntu`, `5.2.4-luarocks-noble`, `5.2.4-luarocks-ubuntu`: [lua-5.2/luarocks-noble/Dockerfile](https://github.com/GUI/lua-docker/blob/main/lua-5.2/luarocks-noble/Dockerfile)## Image Variants
### `nickblah/lua:`
The default Lua image. Provides Lua. Uses Debian Linux for base image.### `nickblah/lua:-alpine`
Provides Lua. Uses Alpine Linux for base image.### `nickblah/lua:-luarocks`
Provides Lua and LuaRocks. Uses Debian Linux for base image.### `nickblah/lua:-luarocks-alpine`
Provides Lua and LuaRocks. Uses Alpine Linux for base image.## Installing C Libraries
These base images are minimal, so they only contain the necessary dependencies for running Lua and installing pure-Lua LuaRocks modules. If you need to install LuaRocks modules that include C extensions or need compiling/building, then you'll first need to install the necessary dependencies (for example, make, gcc, etc). The exact dependencies may vary depending on the module's requirements, but to install basic build dependencies, the following installation commands can be used:
- For Debian based images:
```sh
apt-get update && apt-get install -y build-essential
```
- For Alpine based images:
```sh
apk add --no-cache build-base
```