diff --git a/contrib/dnsmasq/CHANGES.md b/contrib/dnsmasq/CHANGES.md deleted file mode 100644 index 00278a43..00000000 --- a/contrib/dnsmasq/CHANGES.md +++ /dev/null @@ -1,18 +0,0 @@ -# dnsmasq - -Notable changes image releases. The dnsmasq project [upstream](http://www.thekelleys.org.uk/dnsmasq/doc.html) has its own [changelog](http://www.thekelleys.org.uk/dnsmasq/CHANGELOG). - -## v0.4.1 - -* Rebuild with alpine:3.6 base image -* Add EXPOSE ports 67 and 69 to Dockerfile - -## v0.4.0 - -* `dnsmasq` package version 2.76 -* Rebuild with alpine:3.5 base image to receive patches -* Update CoreOS `grub.efi` to be recent (stable, 1298.7.0) - -## v0.3.0 - -* `dnsmasq` package version 2.75 diff --git a/contrib/dnsmasq/Dockerfile b/contrib/dnsmasq/Dockerfile deleted file mode 100644 index 976b6560..00000000 --- a/contrib/dnsmasq/Dockerfile +++ /dev/null @@ -1,6 +0,0 @@ -FROM docker.io/alpine:3.12 -LABEL maintainer="Dalton Hubble " -RUN apk -U add dnsmasq curl -COPY tftpboot /var/lib/tftpboot -EXPOSE 53 67 69 -ENTRYPOINT ["/usr/sbin/dnsmasq"] diff --git a/contrib/dnsmasq/Makefile b/contrib/dnsmasq/Makefile deleted file mode 100644 index b10a8a16..00000000 --- a/contrib/dnsmasq/Makefile +++ /dev/null @@ -1,24 +0,0 @@ -DIR := $(abspath $(dir $(lastword $(MAKEFILE_LIST)))) -VERSION=$(shell git rev-parse HEAD) - -LOCAL_REPO=poseidon/dnsmasq -IMAGE_REPO=quay.io/poseidon/dnsmasq - -.PHONY: all -all: image - -.PHONY: tftp -tftp: - @$(DIR)/get-tftp-files - -.PHONY: image -image: tftp - @buildah bud -t $(LOCAL_REPO):$(VERSION) . - @buildah tag $(LOCAL_REPO):$(VERSION) $(LOCAL_REPO):latest - -.PHONY: push -push: - @buildah tag $(LOCAL_REPO):$(VERSION) $(IMAGE_REPO):$(VERSION) - @buildah tag $(LOCAL_REPO):$(VERSION) $(IMAGE_REPO):latest - @buildah push docker://$(IMAGE_REPO):$(VERSION) - @buildah push docker://$(IMAGE_REPO):latest diff --git a/contrib/dnsmasq/README.md b/contrib/dnsmasq/README.md index 15cee521..bad552f5 100644 --- a/contrib/dnsmasq/README.md +++ b/contrib/dnsmasq/README.md @@ -1,57 +1,4 @@ -# dnsmasq [![Docker Repository on Quay](https://quay.io/repository/poseidon/dnsmasq/status "Docker Repository on Quay")](https://quay.io/repository/poseidon/dnsmasq) +# dnsmasq -`dnsmasq` provides a container image for running DHCP, proxy DHCP, DNS, and/or TFTP with [dnsmasq](http://www.thekelleys.org.uk/dnsmasq/doc.html). Use it to test different network setups with clusters of network bootable machines. - -The image bundles `undionly.kpxe`, `ipxe.efi`, and `grub.efi` (experimental) for chainloading BIOS and UEFI clients to iPXE. - -## Usage - -Run the container image as a DHCP, DNS, and TFTP service. - -```sh -sudo docker run --rm --cap-add=NET_ADMIN --net=host quay.io/poseidon/dnsmasq \ - -d -q \ - --dhcp-range=192.168.1.3,192.168.1.254 \ - --enable-tftp --tftp-root=/var/lib/tftpboot \ - --dhcp-match=set:bios,option:client-arch,0 \ - --dhcp-boot=tag:bios,undionly.kpxe \ - --dhcp-match=set:efi32,option:client-arch,6 \ - --dhcp-boot=tag:efi32,ipxe.efi \ - --dhcp-match=set:efibc,option:client-arch,7 \ - --dhcp-boot=tag:efibc,ipxe.efi \ - --dhcp-match=set:efi64,option:client-arch,9 \ - --dhcp-boot=tag:efi64,ipxe.efi \ - --dhcp-userclass=set:ipxe,iPXE \ - --dhcp-boot=tag:ipxe,http://matchbox.example.com:8080/boot.ipxe \ - --address=/matchbox.example.com/192.168.1.2 \ - --log-queries \ - --log-dhcp -``` - -Press ctrl-C to stop the Docker container. - -## Configuration Flags - -Configuration arguments can be provided as flags. Check the dnsmasq [man pages](http://www.thekelleys.org.uk/dnsmasq/docs/dnsmasq-man.html) for a complete list. - -| flag | description | example | -|----------|-------------|---------| -| --dhcp-range | Enable DHCP, lease given range | `172.18.0.50,172.18.0.99`, `192.168.1.1,proxy,255.255.255.0` | -| --dhcp-boot | DHCP next server option | `http://matchbox.foo:8080/boot.ipxe` | -| --enable-tftp | Enable serving from tftp-root over TFTP | NA | -| --address | IP address for a domain name | /matchbox.foo/172.18.0.2 | - -## Development - -Build a container image locally. - -``` -make docker-image -``` - -Run the image with Docker on the `docker0` bridge (default). - -``` -sudo docker run --rm --cap-add=NET_ADMIN poseidon/dnsmasq -d -q -``` +Moved to [dnsmasq](https://github.com/poseidon/dnsmasq). diff --git a/contrib/dnsmasq/get-tftp-files b/contrib/dnsmasq/get-tftp-files deleted file mode 100755 index e31f60e4..00000000 --- a/contrib/dnsmasq/get-tftp-files +++ /dev/null @@ -1,13 +0,0 @@ -#!/usr/bin/env bash -set -eu - -DEST=${1:-"tftpboot"} - -if [ ! -d $DEST ]; then - echo "Creating directory $DEST" - mkdir -p $DEST -fi - -curl -s -o $DEST/undionly.kpxe http://boot.ipxe.org/undionly.kpxe -cp $DEST/undionly.kpxe $DEST/undionly.kpxe.0 -curl -s -o $DEST/ipxe.efi http://boot.ipxe.org/ipxe.efi