Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Upgraded dnsmasq to 2.82-r0 #24

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 4 additions & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
@@ -1,11 +1,14 @@
FROM alpine:edge
LABEL maintainer="[email protected]"

ENV DNSMASQ_VERSION 2.82-r0

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You're using the package manager, you shouldn't need to do this. If you build this Dockerfile again, edge has been updated since the DockerHub build from 2 years ago, this will automatically use the newer package version, which is exactly what you've specified here.

You can either just trigger a new build of the Dockerfile without this PR and have a new release on DockerHub pushed, or build to the current Alpine stable 3.12 release in May, which provides dnsmasq 2.81, 2.82 will become available near the end of the year with Alpine 3.13.

Copy link
Owner

@jpillora jpillora Aug 21, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"Fix crash under heavy TCP connection load introduced in 2.81.
Thanks to Frank for good work chasing this down." dnsmasq CHANGELOG

If I'm going to bump dnsmasq, I'd rather just go with 2.82

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's your image, if you want to continue building your Dockerfile on alpine:edge go for it. Your image isn't all that complicated, nor will it be updating that frequently, so the risk of such is fairly minimal.


# webproc release settings
ENV WEBPROC_VERSION 0.2.2
ENV WEBPROC_URL https://github.com/jpillora/webproc/releases/download/$WEBPROC_VERSION/webproc_linux_amd64.gz
# fetch dnsmasq and webproc binary
RUN apk update \
&& apk --no-cache add dnsmasq \
&& apk --no-cache add dnsmasq=$DNSMASQ_VERSION \

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For the same reasons that I don't advise edge builds beyond local use/testing, I would advise against version pinning, especially on edge repo. See official docs warning:

It is important to understand your package repo's version retention rules.
For example, most Alpine package repos contain an "edge" branch, which may drop package versions that are not deemed fit to make it into a stable branch.
This means that pinning to a version on the edge branch may stop working after the package version is revoked from the repo.
Always pin to a package version that is intended for your current Alpine Linux version.

Thus, this will likely break in future should anyone try to build this Dockerfile after releasing to Dockerhub. Which has tags that don't match dnsmasq releases either mind you.

&& apk add --no-cache --virtual .build-deps curl \
&& curl -sL $WEBPROC_URL | gzip -d - > /usr/local/bin/webproc \
&& chmod +x /usr/local/bin/webproc \
Expand Down