Software / code / prosody
Comparison
tools/build-env/Containerfile @ 13323:7bfd6db52528
tools/build-env: Tools for building and testing in a container
./tools/build-env/build.sh
Creates a container image based on Debian or Ubuntu
./tools/build-env/here.sh
Starts a container and mounts in the current working directory, from
where one can ./configure; make; make test etc
| author | Kim Alvefur <zash@zash.se> |
|---|---|
| date | Sun, 12 Nov 2023 13:02:38 +0100 |
comparison
equal
deleted
inserted
replaced
| 13322:28211ed70b4c | 13323:7bfd6db52528 |
|---|---|
| 1 ARG os | |
| 2 ARG dist | |
| 3 FROM ${os:-debian}:${dist:-sid} | |
| 4 ENV DEBIAN_FRONTEND noninteractive | |
| 5 RUN set -ex; \ | |
| 6 apt-get update; \ | |
| 7 apt-get install -y --no-install-recommends \ | |
| 8 ccache dh-lua libicu-dev libidn11-dev libssl-dev \ | |
| 9 lua-bitop lua-dbi-mysql lua-dbi-postgresql lua-dbi-sqlite3 \ | |
| 10 lua-event lua-expat lua-filesystem lua-ldap lua-sec lua-socket \ | |
| 11 luarocks shellcheck mercurial; \ | |
| 12 apt-get install -y ca-certificates dns-root-data; \ | |
| 13 apt-get install -y lua-bit32 || true; \ | |
| 14 apt-get install -y lua-busted || true; \ | |
| 15 apt-get install -y lua-check || true; \ | |
| 16 apt-get install -y lua-readline || true; \ | |
| 17 apt-get install -y lua-unbound || true; \ | |
| 18 update-alternatives --set lua-interpreter /usr/bin/lua5.4 || true \ | |
| 19 apt-get clean | |
| 20 | |
| 21 # Place this file in an empty directory and build the image with | |
| 22 # podman build . -t prosody.im/build-env | |
| 23 # | |
| 24 # Substituting podman for docker should work, where that is what's available. | |
| 25 # | |
| 26 # Then in a source directory, run: | |
| 27 # podman run -it --rm -v "$PWD:$PWD" -w "$PWD" --entrypoint /bin/bash \ | |
| 28 # --userns=keep-id --network host prosody.im/build-env | |
| 29 # | |
| 30 # In the resulting environment everything required to compile and run prosody | |
| 31 # is available, so e.g. `./configure; make; ./prosody` should Just Work! |