Initial commit
This commit is contained in:
commit
cedb111eeb
23
.gitignore
vendored
Normal file
23
.gitignore
vendored
Normal file
@ -0,0 +1,23 @@
|
||||
# ---> Vim
|
||||
# Swap
|
||||
[._]*.s[a-v][a-z]
|
||||
[._]*.sw[a-p]
|
||||
[._]s[a-rt-v][a-z]
|
||||
[._]ss[a-gi-z]
|
||||
[._]sw[a-p]
|
||||
|
||||
# Session
|
||||
Session.vim
|
||||
|
||||
# Temporary
|
||||
.netrwhist
|
||||
*~
|
||||
# Auto-generated tag files
|
||||
tags
|
||||
# Persistent undo
|
||||
[._]*.un~
|
||||
|
||||
# ---> Kate
|
||||
# Swap Files #
|
||||
.*.kate-swp
|
||||
.swp.*
|
19
COPYING-MIT
Normal file
19
COPYING-MIT
Normal file
@ -0,0 +1,19 @@
|
||||
Copyright 2020 Nils Freydank
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy of
|
||||
this software and associated documentation files (the "Software"), to deal in
|
||||
the Software without restriction, including without limitation the rights to
|
||||
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
|
||||
the Software, and to permit persons to whom the Software is furnished to do so,
|
||||
subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
THE SOFTWARE.
|
30
Dockerfile
Normal file
30
Dockerfile
Normal file
@ -0,0 +1,30 @@
|
||||
#
|
||||
# Dockerfile to add a precompiled glibc to an alpinelinux container.
|
||||
# Copyright (C) 2020 by Nils Freydank <nils+container@holgersson.xyz>,
|
||||
# published according to terms of the MIT license.
|
||||
#
|
||||
# Note: This copyright and license only affects the docker/podman file itself.
|
||||
# The installed softwarecomponents have their own respective licsenses!
|
||||
|
||||
FROM alpine-x86_64:3.11.6 as builder
|
||||
|
||||
ENV GLIBC_VERSION="2.31-r0"
|
||||
ENV ALPINE_ARCH="x86_64"
|
||||
RUN apk add --no-cache --update-cache ca-certificates
|
||||
|
||||
# Grab upstreams GnuPG pubkey to verify downloads later on.
|
||||
#RUN wget -q -O - https://alpine-pkgs.sgerrand.com/sgerrand.rsa.pub | \
|
||||
# gpg --import -
|
||||
RUN wget -O /etc/apk/keys/sgerrand.rsa.pub \
|
||||
https://alpine-pkgs.sgerrand.com/sgerrand.rsa.pub
|
||||
RUN wget https://github.com/sgerrand/alpine-pkg-glibc/releases/download/${GLIBC_VERSION}/glibc-${GLIBC_VERSION}.apk
|
||||
RUN apk add glibc-${GLIBC_VERSION}.apk
|
||||
|
||||
# Cleanup
|
||||
RUN rm -rf ~/.gnupg /var/cache/* glibc-${GLIBC_VERSION}.apk \
|
||||
/etc/apk/keys/sgerrand.rsa.pub
|
||||
|
||||
### Create the actual image.
|
||||
FROM scratch
|
||||
MAINTAINER Nils Freydank "nils+container@holgersson.xyz"
|
||||
COPY --from=builder . .
|
37
README.rst
Normal file
37
README.rst
Normal file
@ -0,0 +1,37 @@
|
||||
alpine-x86_64-glibc
|
||||
===================
|
||||
|
||||
This repository contains a dockerfile to add a `pre-built glibc`_ to an
|
||||
otherwise emtpy alpine container. This is necessary for some software
|
||||
that is shipped precompiled and linked against glibc only. `Alpine Linux`_
|
||||
itself uses the much smaller and faster `musl libc`_ (which is also considered
|
||||
often as a more secure replacement for the glibc).
|
||||
|
||||
Usage
|
||||
-----
|
||||
|
||||
To use this image you need the base alpine image (either from a registry, then
|
||||
you need to edit the Dockerfile, or -- preferred -- self-build as alpine-x86_64)
|
||||
and podman or docker installed. Then simply build the image based on the
|
||||
dockerfile:
|
||||
|
||||
.. code:: shell
|
||||
|
||||
podman build . -t alpine-glibc-x86_64:3.11.6_2.31-r0
|
||||
|
||||
The tag is a suggestion to include both the alpine and the glibc version.
|
||||
|
||||
Author and Copying
|
||||
------------------
|
||||
|
||||
This repository is authored by `Nils Freydank`_. You can use, modify and
|
||||
share this code under the terms of the MIT license (see the file
|
||||
COPYING-MIT for details).
|
||||
|
||||
.. links
|
||||
|
||||
.. _`pre-built glibc`: https://github.com/sgerrand/alpine-pkg-glibc/releases
|
||||
.. _`Alpine Linux`: https://alpinelinux.org/about/
|
||||
.. _`musl libc`: https://musl.libc.org/
|
||||
.. _`podman`: https://github.com/containers/libpod
|
||||
.. _`Nils Freydank`: mailto:nils+container@holgersson.xyz?Subject:\ alpine\ podman
|
Loading…
Reference in New Issue
Block a user