Cleanup of docker images
This commit is contained in:
parent
d7dc7be276
commit
dc20551288
20 changed files with 48 additions and 45 deletions
|
|
@ -1,2 +0,0 @@
|
|||
The 404-server (defaultbackend) has moved to the
|
||||
[kubernetes/ingress-gce](https://github.com/kubernetes/ingress-gce) repository.
|
||||
|
|
@ -1,5 +1,7 @@
|
|||
approvers:
|
||||
- aledbf
|
||||
- ElvinEfendi
|
||||
|
||||
reviewers:
|
||||
- bprashanth
|
||||
- ElvinEfendi
|
||||
- aledbf
|
||||
|
|
|
|||
14
images/README.md
Normal file
14
images/README.md
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
# Docker images
|
||||
|
||||
Directory | Purpose
|
||||
------------ | -------------
|
||||
custom-error-pages | Example of Custom error pages for the NGINX Ingress controller
|
||||
e2e | Image to run e2e tests
|
||||
e2e-prow | Image to launch Prow jobs
|
||||
fastcgi-helloserver | FastCGI application for e2e tests
|
||||
grpc-fortune-teller | grpc server application for the nginx-ingress grpc example
|
||||
httpbin | A simple HTTP Request & Response Service
|
||||
mkdocs | Image to build the static documentation
|
||||
nginx | OpenResty base image using [debian-base](https://quay.io/kubernetes-ingress-controller/debian-base-amd64)
|
||||
|
||||
:bangbang: Only the nginx image is meant to be published. The others are used as examples for some feature of the ingress controller or to run e2e tests.
|
||||
|
|
@ -25,11 +25,11 @@ endif
|
|||
ARCH ?= $(shell go env GOARCH)
|
||||
GOARCH = ${ARCH}
|
||||
|
||||
BASEIMAGE?=alpine:3.9
|
||||
BASEIMAGE?=alpine:3.10
|
||||
|
||||
ALL_ARCH = amd64 arm arm64 ppc64le
|
||||
ALL_ARCH = amd64 arm arm64
|
||||
|
||||
QEMUVERSION=v3.0.0
|
||||
QEMUVERSION=v4.1.0-1
|
||||
|
||||
IMGNAME = custom-error-pages
|
||||
IMAGE = $(REGISTRY)/$(IMGNAME)
|
||||
|
|
@ -40,11 +40,7 @@ ifeq ($(ARCH),arm)
|
|||
GOARCH=arm
|
||||
endif
|
||||
ifeq ($(ARCH),arm64)
|
||||
QEMUARCH=aarch64
|
||||
endif
|
||||
ifeq ($(ARCH),ppc64le)
|
||||
QEMUARCH=ppc64le
|
||||
GOARCH=ppc64le
|
||||
QEMUARCH=aarch64
|
||||
endif
|
||||
|
||||
TEMP_DIR := $(shell mktemp -d)
|
||||
|
|
|
|||
74
images/e2e-prow/Dockerfile
Normal file
74
images/e2e-prow/Dockerfile
Normal file
|
|
@ -0,0 +1,74 @@
|
|||
# Copyright 2016 The Kubernetes Authors.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
# This file creates a build environment for building and running kubernetes
|
||||
# unit and integration tests
|
||||
|
||||
FROM gcr.io/k8s-testimages/bootstrap
|
||||
|
||||
# hint to kubetest that it is in CI
|
||||
ENV KUBETEST_IN_DOCKER="true"
|
||||
|
||||
# Go standard envs
|
||||
ENV GOPATH /go
|
||||
ENV PATH /usr/local/go/bin:$PATH
|
||||
|
||||
RUN mkdir -p /go/bin
|
||||
ENV PATH $GOPATH/bin:$PATH
|
||||
|
||||
# setup k8s repo symlink
|
||||
RUN mkdir -p /go/src/k8s.io/kubernetes \
|
||||
&& ln -s /go/src/k8s.io/kubernetes /workspace/kubernetes
|
||||
|
||||
# preinstall:
|
||||
# - graphviz package for graphing profiles
|
||||
# - bc for shell to junit
|
||||
# - rpm for building RPMs with Bazel
|
||||
RUN apt-get update \
|
||||
&& apt-get install -y \
|
||||
bc \
|
||||
rpm \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
ARG K8S_RELEASE
|
||||
ARG ETCD_VERSION
|
||||
ARG KIND_VERSION
|
||||
|
||||
RUN curl -sSL https://storage.googleapis.com/kubernetes-release/release/${K8S_RELEASE}/bin/linux/amd64/kubectl -o /usr/local/bin/kubectl \
|
||||
&& chmod +x /usr/local/bin/kubectl
|
||||
|
||||
RUN curl -sSL https://storage.googleapis.com/kubernetes-release/release/${K8S_RELEASE}/bin/linux/amd64/kube-apiserver -o /usr/local/bin/kube-apiserver \
|
||||
&& chmod +x /usr/local/bin/kube-apiserver
|
||||
|
||||
RUN curl -sSL https://storage.googleapis.com/etcd/${ETCD_VERSION}/etcd-${ETCD_VERSION}-linux-amd64.tar.gz -o /tmp/etcd-${ETCD_VERSION}-linux-amd64.tar.gz \
|
||||
&& mkdir -p /tmp/etcd-download \
|
||||
&& tar xzvf /tmp/etcd-${ETCD_VERSION}-linux-amd64.tar.gz -C /tmp/etcd-download --strip-components=1 \
|
||||
&& cp /tmp/etcd-download/etcd /usr/local/bin \
|
||||
&& rm -rf /tmp/etcd-download
|
||||
|
||||
RUN curl -sSL https://github.com/kubernetes-sigs/kind/releases/download/${KIND_VERSION}/kind-linux-amd64 -o /usr/local/bin/kind \
|
||||
&& chmod +x /usr/local/bin/kind
|
||||
|
||||
# install go
|
||||
ENV GO_VERSION 1.13
|
||||
ENV GO_TARBALL "go${GO_VERSION}.linux-amd64.tar.gz"
|
||||
RUN wget -q "https://storage.googleapis.com/golang/${GO_TARBALL}" \
|
||||
&& tar xzf "${GO_TARBALL}" -C /usr/local \
|
||||
&& rm "${GO_TARBALL}"
|
||||
|
||||
RUN go get github.com/onsi/ginkgo/ginkgo \
|
||||
&& go get golang.org/x/lint/golint \
|
||||
&& rm -rf /go/src/github.com
|
||||
|
||||
ENV KUBEBUILDER_ASSETS /usr/local/bin
|
||||
20
images/e2e-prow/Makefile
Normal file
20
images/e2e-prow/Makefile
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
TAG ?=v$(shell date +%m%d%Y)-$(shell git rev-parse --short HEAD)
|
||||
REGISTRY ?= quay.io/kubernetes-ingress-controller
|
||||
DOCKER ?= docker
|
||||
|
||||
IMAGE = $(REGISTRY)/e2e-prow
|
||||
|
||||
all: docker-build docker-push
|
||||
|
||||
docker-build:
|
||||
$(DOCKER) build \
|
||||
--pull \
|
||||
--build-arg K8S_RELEASE=v1.15.3 \
|
||||
--build-arg ETCD_VERSION=v3.3.15 \
|
||||
--build-arg KIND_VERSION=v0.5.1 \
|
||||
-t $(IMAGE):$(TAG) .
|
||||
|
||||
docker-push:
|
||||
$(DOCKER) push $(IMAGE):$(TAG)
|
||||
$(DOCKER) tag $(IMAGE):$(TAG) $(IMAGE):latest
|
||||
$(DOCKER) push $(IMAGE):latest
|
||||
|
|
@ -12,7 +12,7 @@
|
|||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
FROM quay.io/kubernetes-ingress-controller/nginx-amd64:0.90
|
||||
FROM quay.io/kubernetes-ingress-controller/nginx-amd64:0.91
|
||||
|
||||
RUN clean-install \
|
||||
g++ \
|
||||
|
|
@ -24,9 +24,9 @@ RUN clean-install \
|
|||
python \
|
||||
pkg-config
|
||||
|
||||
ENV GOLANG_VERSION 1.12.6
|
||||
ENV GOLANG_VERSION 1.13
|
||||
ENV GO_ARCH linux-amd64
|
||||
ENV GOLANG_SHA dbcf71a3c1ea53b8d54ef1b48c85a39a6c9a935d01fc8291ff2b92028e59913c
|
||||
ENV GOLANG_SHA 68a2297eb099d1a76097905a2ce334e3155004ec08cdea85f24527be3c48e856
|
||||
|
||||
RUN set -eux; \
|
||||
url="https://golang.org/dl/go${GOLANG_VERSION}.${GO_ARCH}.tar.gz"; \
|
||||
|
|
@ -44,8 +44,8 @@ RUN mkdir -p "$GOPATH/src" "$GOPATH/bin" && chmod -R 777 "$GOPATH"
|
|||
|
||||
WORKDIR $GOPATH
|
||||
|
||||
ENV RESTY_CLI_VERSION 0.23
|
||||
ENV RESTY_CLI_SHA 8715b9a6e33140fd468779cd561c0c622f7444a902dc578b1137941ff3fc1ed8
|
||||
ENV RESTY_CLI_VERSION 0.25rc2
|
||||
ENV RESTY_CLI_SHA a38d850441384fa037a5922ca012dcce8708d0e4abe34ad2fe4164a01b28bdfb
|
||||
|
||||
RUN set -eux; \
|
||||
url="https://github.com/openresty/resty-cli/archive/v${RESTY_CLI_VERSION}.tar.gz"; \
|
||||
|
|
|
|||
|
|
@ -23,8 +23,8 @@ all: docker-build docker-push
|
|||
docker-build:
|
||||
$(DOCKER) build \
|
||||
--pull \
|
||||
--build-arg K8S_RELEASE=v1.15.0 \
|
||||
--build-arg ETCD_VERSION=v3.3.12 \
|
||||
--build-arg K8S_RELEASE=v1.15.3 \
|
||||
--build-arg ETCD_VERSION=v3.3.15 \
|
||||
-t $(IMAGE):$(TAG) .
|
||||
|
||||
docker-push:
|
||||
|
|
|
|||
|
|
@ -21,11 +21,11 @@ REPO_INFO=$(shell git config --get remote.origin.url)
|
|||
ARCH ?= $(shell go env GOARCH)
|
||||
GOARCH = ${ARCH}
|
||||
|
||||
BASEIMAGE?=alpine:3.9
|
||||
BASEIMAGE?=alpine:3.10
|
||||
|
||||
ALL_ARCH = amd64 arm arm64 ppc64le
|
||||
ALL_ARCH = amd64 arm arm64
|
||||
|
||||
QEMUVERSION=v3.0.0
|
||||
QEMUVERSION=v4.1.0-1
|
||||
|
||||
IMGNAME = fastcgi-helloserver
|
||||
IMAGE = $(REGISTRY)/$(IMGNAME)
|
||||
|
|
@ -36,11 +36,7 @@ ifeq ($(ARCH),arm)
|
|||
GOARCH=arm
|
||||
endif
|
||||
ifeq ($(ARCH),arm64)
|
||||
QEMUARCH=aarch64
|
||||
endif
|
||||
ifeq ($(ARCH),ppc64le)
|
||||
QEMUARCH=ppc64le
|
||||
GOARCH=ppc64le
|
||||
QEMUARCH=aarch64
|
||||
endif
|
||||
|
||||
TEMP_DIR := $(shell mktemp -d)
|
||||
|
|
|
|||
|
|
@ -24,7 +24,7 @@ BASEIMAGE?=quay.io/kubernetes-ingress-controller/debian-base-$(ARCH):0.1
|
|||
|
||||
ALL_ARCH = amd64 arm arm64
|
||||
|
||||
QEMUVERSION=v4.0.0
|
||||
QEMUVERSION=v4.1.0-1
|
||||
|
||||
IMGNAME = httpbin
|
||||
IMAGE = $(REGISTRY)/$(IMGNAME)
|
||||
|
|
@ -36,9 +36,6 @@ endif
|
|||
ifeq ($(ARCH),arm64)
|
||||
QEMUARCH=aarch64
|
||||
endif
|
||||
ifeq ($(ARCH),ppc64le)
|
||||
QEMUARCH=ppc64le
|
||||
endif
|
||||
|
||||
TEMP_DIR := $(shell mktemp -d)
|
||||
|
||||
|
|
|
|||
40
images/mkdocs/Dockerfile
Normal file
40
images/mkdocs/Dockerfile
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
# Copyright 2018 The Kubernetes Authors. All rights reserved.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
FROM alpine:3.10
|
||||
|
||||
RUN apk update && apk add --no-cache \
|
||||
bash \
|
||||
git \
|
||||
git-fast-import \
|
||||
openssh \
|
||||
python3 \
|
||||
python3-dev \
|
||||
curl \
|
||||
&& python3 -m ensurepip \
|
||||
&& rm -r /usr/lib/python*/ensurepip \
|
||||
&& pip3 install --upgrade pip setuptools \
|
||||
&& rm -r /root/.cache \
|
||||
&& rm -rf /var/cache/apk/*
|
||||
|
||||
RUN curl -sSL https://raw.githubusercontent.com/kubernetes/ingress-nginx/master/requirements-docs.txt -o requirements.txt \
|
||||
&& pip install -U -r requirements.txt
|
||||
|
||||
WORKDIR /docs
|
||||
|
||||
EXPOSE 3000
|
||||
|
||||
COPY entrypoint.sh /
|
||||
|
||||
ENTRYPOINT ["/entrypoint.sh"]
|
||||
28
images/mkdocs/entrypoint.sh
Executable file
28
images/mkdocs/entrypoint.sh
Executable file
|
|
@ -0,0 +1,28 @@
|
|||
#!/bin/bash
|
||||
|
||||
# Copyright 2018 The Kubernetes Authors.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
set -o errexit
|
||||
set -o pipefail
|
||||
|
||||
CMD=$1
|
||||
|
||||
if [ "$CMD" == "build" ];
|
||||
then
|
||||
mkdocs build
|
||||
exit 0;
|
||||
fi
|
||||
|
||||
mkdocs serve --dev-addr=0.0.0.0:3000 --livereload
|
||||
|
|
@ -26,7 +26,7 @@ ifeq ($(GOHOSTOS),darwin)
|
|||
SED_I=sed -i ''
|
||||
endif
|
||||
|
||||
QEMUVERSION=v4.0.0-2
|
||||
QEMUVERSION=v4.1.0-1
|
||||
|
||||
IMGNAME = nginx
|
||||
IMAGE = $(REGISTRY)/$(IMGNAME)
|
||||
|
|
|
|||
|
|
@ -1,3 +0,0 @@
|
|||
# Deprecated
|
||||
|
||||
Please switch to [debian-base](https://github.com/kubernetes/kubernetes/tree/master/build/debian-base)
|
||||
Loading…
Add table
Add a link
Reference in a new issue