This docker image is based on the standard Alpine image with additional docker-compose and kubectl installed. This way it's easy to use it as a gitlab runner task to be able to do docker-compose up -d and deploy manifest by using kubectl in your (Gitlab) pipeline.
user@server:~/repos/alpine-docker-compose-kubectl$ cat Dockerfile.amd64
FROM alpine:latest
RUN apk add --no-cache --update curl && \
curl -L -o /usr/bin/kubectl "https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl" && \
chmod +x /usr/bin/kubectl
#rm /usr/bin/kubectl
RUN GLIBC_VERSION='2.29-r0' && \
apk --no-cache add ca-certificates curl && \
curl -Lo /etc/apk/keys/sgerrand.rsa.pub https://alpine-pkgs.sgerrand.com/sgerrand.rsa.pub && \
curl -Lo glibc-${GLIBC_VERSION}.apk https://github.com/sgerrand/alpine-pkg-glibc/releases/download/2.29-r0/glibc-2.29-r0.apk && \
apk add glibc-${GLIBC_VERSION}.apk && \
rm -rf /var/cache/apk/* && \
rm glibc-${GLIBC_VERSION}.apk
RUN curl -Lso /tmp/libz.tar.xz https://www.archlinux.org/packages/core/x86_64/zlib/download && \
mkdir -p /tmp/libz && \
tar -xf /tmp/libz.tar.xz -C /tmp/libz && \
cp /tmp/libz/usr/lib/libz.so.* /usr/glibc-compat/lib
RUN apk add --no-cache -t .deps ca-certificates curl && \
DOCKER_COMPOSE_URL=https://github.com$(curl -L https://github.com/docker/compose/releases/latest | grep -Eo 'href="[^"]+docker-compose-Linux-x86_64' | sed 's/^href="//' | head -1) && \
curl -Lo /usr/local/bin/docker-compose $DOCKER_COMPOSE_URL && \
chmod a+rx /usr/local/bin/docker-compose && \
apk del curl && \
\
# Basic check it works
docker-compose version
ENTRYPOINT ["/usr/local/bin/docker-compose"]
image: docker:latest
services:
- docker:dind
stages:
- test
cURL_orgy:
stage: test
tags:
- kubernetes
image: djieno/alpine-docker-compose-kubectl:amd64
script:
- export DOCKER_HOST=tcp://localhost:2375
- docker-compose -f /djieno/dockers/docker-compose_k3s.yml up -d
Content type
Image
Digest
Size
29.6 MB
Last updated
over 7 years ago
docker pull djieno/alpine-docker-compose-kubectl:amd64