1- # Bob containers example
2-
3- This repository uses the [ basement] ( https://github.com/BobBuildTool/basement )
4- recipes to build a lighttpd container.
1+ # Bob Containers Example
52
63[ ![ Build Status] ( https://ci.bobbuildtool.dev/jenkins/buildStatus/icon?job=example-containers-containers__lighttpd )] ( https://ci.bobbuildtool.dev/jenkins/job/example-containers-containers__lighttpd/ )
74
5+ This repository is meant as an example of how to build a complete Linux image
6+ with Bob that can be used as-is or with minimal changes for various uses, such
7+ as a Docker container, as a virtual machine, on a SD card in your single board
8+ computer or with ` systemd-nspawn ` .
9+
10+ It uses the [ basement] ( https://github.com/BobBuildTool/basement ) recipe layer to
11+ build a Docker container running lighttpd, with only the necessary dependencies
12+ installed - in contrast to building such a container on top of a Debian release.
13+ For more information about recipe layers and Bob's usage in general see [ its
14+ documentation] ( https://bob-build-tool.readthedocs.io/en/latest/index.html ) .
15+
16+ If you're interested in building an embedded application using Bob and the
17+ basement layer, head over to the [ embedded
18+ example] ( https://github.com/BobBuildTool/bob-example-embedded ) .
19+
820# Prerequisites
921
10- * A x86_64 system with the regular development tools installed (gcc, make,
11- perl, ...)
12- * Bleeding edge Bob Build Tool (https://github.com/BobBuildTool/bob )
13- * Patience
22+ * A ` x86_64 ` system with the regular development tools installed (GCC, make,
23+ Perl, ...)
24+ * Bleeding edge [ Bob Build Tool] ( https://github.com/BobBuildTool/bob ) (see
25+ [ below] ( #why-bleeding-edge ) )
26+ * Patience :coffee :
1427
1528# How to build
1629
1730Clone the recipes and build them with Bob:
1831
1932 $ git clone https://github.com/BobBuildTool/bob-example-containers.git \
2033 --recurse-submodules
34+ $ cd bob-example-containers
2135 $ bob build containers::lighttpd
2236
23- This recipe builds a minimal container image that has solely lighttpd and the
37+ These recipes build a minimal container image that has solely lighttpd and the
2438required dependencies installed.
2539
2640# How to use
2741
28- To use it you have to import it in docker :
42+ To use it you have to import it in Docker :
2943
44+ $ # Still in the bob-example-containers directory
3045 $ tar -C $(bob query-path -f '{dist}' --release containers::lighttpd) -c . \
3146 | docker import - lighttpd
3247
@@ -37,3 +52,20 @@ Now you can serve any host directory with the lighttpd in the image:
3752 -m /usr/lib/lighttpd
3853
3954This will expose the lighttpd at port 8080 on your host.
55+
56+ # Contributions
57+
58+ Contributions are welcome in form of feedback, bug reports and code. If you want
59+ to contribute in the form of code but are unsure about how to do things exactly,
60+ feel free to open up a pull request and ask for help.
61+
62+ Currently planned extension are:
63+
64+ * [ ] Support generating more image formats
65+
66+ # Why bleeding edge
67+
68+ The example uses Bob recipe layers that aren't currently available within a Bob
69+ release because one goal of it is testing the new feature intensively. Bob's
70+ next release will likely include layers so you won't have to install the
71+ bleeding edge version anymore.
0 commit comments