Browse Source

Pin the base image for the 1.3 branch (#16697)

* Pin the base image for the 1.3 branch

* Move master to 1.4-dev and pin on 1.4

* Address reviewer comments.

* Add an update-ca-certificates call

* Address injector build failure

* Remove duplicate sidecar injector dockerfile

* Revert Dockerfile.app_sidecar base version changes

* Revert Dockerfile.app change
Steven Dake 1 month ago
parent
commit
3cd6c36942

+ 3
- 1
Makefile View File

@@ -19,9 +19,11 @@ ISTIO_GO := $(shell dirname $(realpath $(lastword $(MAKEFILE_LIST))))
19 19
 export ISTIO_GO
20 20
 SHELL := /bin/bash -o pipefail
21 21
 
22
-# Current version, updated after a release.
23 22
 VERSION ?= 1.4-dev
24 23
 
24
+# Base version of Istio image to use
25
+BASE_VERSION ?= 1.4
26
+
25 27
 export GO111MODULE ?= on
26 28
 export GOPROXY ?= https://proxy.golang.org
27 29
 export GOSUMDB ?= sum.golang.org

+ 29
- 0
docker/Dockerfile.base View File

@@ -0,0 +1,29 @@
1
+FROM ubuntu:xenial
2
+# Base image for debug builds.
3
+# Built manually uploaded as "istionightly/base_debug"
4
+
5
+ENV DEBIAN_FRONTEND=noninteractive
6
+
7
+# Do not add more stuff to this list that isn't small or critically useful.
8
+# If you occasionally need something on the container do
9
+# sudo apt-get update && apt-get whichever
10
+
11
+# hadolint ignore=DL3005,DL3008
12
+RUN apt-get update && \
13
+    apt-get install --no-install-recommends -y \
14
+      ca-certificates \
15
+      curl \
16
+      iptables \
17
+      iproute2 \
18
+      iputils-ping \
19
+      knot-dnsutils \
20
+      netcat \
21
+      tcpdump \
22
+      net-tools \
23
+      lsof \
24
+      linux-tools-generic \
25
+      sudo \
26
+   && update-ca-certificates \
27
+   && apt-get upgrade -y \
28
+   && apt-get clean \
29
+   && rm -rf  /var/log/*log /var/lib/apt/lists/* /var/log/apt/* /var/lib/dpkg/*-old /var/cache/debconf/*-old

+ 5
- 2
docker/Dockerfile.kubectl View File

@@ -1,6 +1,9 @@
1
-# hadolint ignore=DL3006
2
-FROM istionightly/base_debug
3 1
 # Image for post install jobs
2
+# Version is the base image version from the TLD Makefile
3
+ARG BASE_VERSION=latest
4
+
5
+# The following section is used as base image if BASE_DISTRIBUTION=default
6
+FROM docker.io/istio/base:${BASE_VERSION} as default
4 7
 
5 8
 # This container should only contain kubectl.  Hard-coding to use Linux K8s 1.11.1 version.
6 9
 ADD https://storage.googleapis.com/kubernetes-release/release/v1.11.1/bin/linux/amd64/kubectl /usr/bin/kubectl

+ 4
- 2
galley/docker/Dockerfile.galley View File

@@ -1,9 +1,11 @@
1 1
 # BASE_DISTRIBUTION is used to switch between the old base distribution and distroless base images
2 2
 ARG BASE_DISTRIBUTION=default
3 3
 
4
+# Version is the base image version from the TLD Makefile
5
+ARG BASE_VERSION=latest
6
+
4 7
 # The following section is used as base image if BASE_DISTRIBUTION=default
5
-# hadolint ignore=DL3006
6
-FROM istionightly/base_debug as default
8
+FROM docker.io/istio/base:${BASE_VERSION} as default
7 9
 
8 10
 # The following section is used as base image if BASE_DISTRIBUTION=distroless
9 11
 # hadolint ignore=DL3007

+ 4
- 2
mixer/docker/Dockerfile.test_policybackend View File

@@ -1,9 +1,11 @@
1 1
 # BASE_DISTRIBUTION is used to switch between the old base distribution and distroless base images
2 2
 ARG BASE_DISTRIBUTION=default
3 3
 
4
+# Version is the base image version from the TLD Makefile
5
+ARG BASE_VERSION=latest
6
+
4 7
 # The following section is used as base image if BASE_DISTRIBUTION=default
5
-# hadolint ignore=DL3006
6
-FROM istionightly/base_debug as default
8
+FROM docker.io/istio/base:${BASE_VERSION} as default
7 9
 
8 10
 # The following section is used as base image if BASE_DISTRIBUTION=distroless
9 11
 # hadolint ignore=DL3007

+ 4
- 2
pilot/docker/Dockerfile.pilot View File

@@ -1,9 +1,11 @@
1 1
 # BASE_DISTRIBUTION is used to switch between the old base distribution and distroless base images
2 2
 ARG BASE_DISTRIBUTION=default
3 3
 
4
+# Version is the base image version from the TLD Makefile
5
+ARG BASE_VERSION=latest
6
+
4 7
 # The following section is used as base image if BASE_DISTRIBUTION=default
5
-# hadolint ignore=DL3006
6
-FROM istionightly/base_debug as default
8
+FROM docker.io/istio/base:${BASE_VERSION} as default
7 9
 
8 10
 # The following section is used as base image if BASE_DISTRIBUTION=distroless
9 11
 # hadolint ignore=DL3007

+ 6
- 2
pilot/docker/Dockerfile.proxy_debug View File

@@ -1,5 +1,9 @@
1
-# hadolint ignore=DL3006
2
-FROM istionightly/base_debug
1
+# Version is the base image version from the TLD Makefile
2
+ARG BASE_VERSION=latest
3
+
4
+# The following section is used as base image if BASE_DISTRIBUTION=default
5
+FROM docker.io/istio/base:${BASE_VERSION} as default
6
+
3 7
 ARG proxy_version
4 8
 ARG istio_version
5 9
 

+ 5
- 7
pilot/docker/Dockerfile.proxy_init View File

@@ -1,13 +1,11 @@
1 1
 # BASE_DISTRIBUTION is used to switch between the old base distribution and distroless base images
2 2
 ARG BASE_DISTRIBUTION=default
3 3
 
4
-# The following section is used as base image if BASE_DISTRIBUTION=default
5
-FROM ubuntu:xenial as default
6
-# hadolint ignore=DL3005,DL3008
7
-RUN apt-get update && apt-get upgrade -y && apt-get install -y --no-install-recommends \
8
-    iproute2 \
9
-    iptables \
10
- && rm -rf /var/lib/apt/lists/*
4
+# ISTIO_VERSION is used to specify the version of the release
5
+ARG BASE_VERSION=latest
6
+
7
+ # The following section is used as base image if BASE_DISTRIBUTION=default
8
+FROM docker.io/istio/base:${BASE_VERSION} as default
11 9
 
12 10
 COPY istio-iptables.sh /usr/local/bin/
13 11
 ENTRYPOINT ["/usr/local/bin/istio-iptables.sh"]

+ 6
- 2
pilot/docker/Dockerfile.proxytproxy View File

@@ -1,5 +1,9 @@
1
-# hadolint ignore=DL3006
2
-FROM istionightly/base_debug
1
+# Version is the base image version from the TLD Makefile
2
+ARG BASE_VERSION=latest
3
+
4
+# The following section is used as base image if BASE_DISTRIBUTION=default
5
+FROM docker.io/istio/base:${BASE_VERSION} as default
6
+
3 7
 ARG proxy_version
4 8
 ARG istio_version
5 9
 

+ 4
- 2
pilot/docker/Dockerfile.proxyv2 View File

@@ -1,9 +1,11 @@
1 1
 # BASE_DISTRIBUTION is used to switch between the old base distribution and distroless base images
2 2
 ARG BASE_DISTRIBUTION=default
3 3
 
4
+# Version is the base image version from the TLD Makefile
5
+ARG BASE_VERSION=latest
6
+
4 7
 # The following section is used as base image if BASE_DISTRIBUTION=default
5
-# hadolint ignore=DL3006
6
-FROM istionightly/base_debug as default
8
+FROM docker.io/istio/base:${BASE_VERSION} as default
7 9
 
8 10
 # Add CA certificates for SSL connections.
9 11
 # obtained from debian ca-certs deb using fetch_cacerts.sh

+ 5
- 3
security/docker/Dockerfile.citadel View File

@@ -1,10 +1,12 @@
1 1
 # BASE_DISTRIBUTION is used to switch between the old base distribution and distroless base images
2 2
 ARG BASE_DISTRIBUTION=default
3 3
 
4
+# Version is the base image version from the TLD Makefile
5
+ARG BASE_VERSION=latest
6
+
4 7
 # The following section is used as base image if BASE_DISTRIBUTION=default
5
-# No tag available https://hub.docker.com/_/scratch?tab=description
6
-# hadolint ignore=DL3006
7
-FROM scratch as default
8
+FROM docker.io/istio/base:${BASE_VERSION} as default
9
+
8 10
 # obtained from debian ca-certs deb using fetch_cacerts.sh
9 11
 ADD ca-certificates.tgz /
10 12
 

+ 5
- 1
security/docker/Dockerfile.citadel-test View File

@@ -1,4 +1,8 @@
1
-FROM ubuntu:xenial
1
+# Version is the base image version from the TLD Makefile
2
+ARG BASE_VERSION=latest
3
+
4
+# The following section is used as base image if BASE_DISTRIBUTION=default
5
+FROM docker.io/istio/base:${BASE_VERSION} as default
2 6
 
3 7
 COPY istio_ca /usr/local/bin/istio_ca
4 8
 COPY istio_ca.crt /usr/local/bin/istio_ca.crt

+ 4
- 3
security/docker/Dockerfile.node-agent View File

@@ -1,10 +1,11 @@
1 1
 # BASE_DISTRIBUTION is used to switch between the old base distribution and distroless base images
2 2
 ARG BASE_DISTRIBUTION=default
3 3
 
4
+# Version is the base image version from the TLD Makefile
5
+ARG BASE_VERSION=latest
6
+
4 7
 # The following section is used as base image if BASE_DISTRIBUTION=default
5
-# No tag available https://hub.docker.com/_/scratch?tab=description
6
-# hadolint ignore=DL3006
7
-FROM scratch as default
8
+FROM docker.io/istio/base:${BASE_VERSION} as default
8 9
 
9 10
 # The following section is used as base image if BASE_DISTRIBUTION=distroless
10 11
 # hadolint ignore=DL3007

+ 4
- 4
security/docker/Dockerfile.node-agent-k8s View File

@@ -1,11 +1,11 @@
1 1
 # BASE_DISTRIBUTION is used to switch between the old base distribution and distroless base images
2 2
 ARG BASE_DISTRIBUTION=default
3 3
 
4
+# Version is the base image version from the TLD Makefile
5
+ARG BASE_VERSION=latest
6
+
4 7
 # The following section is used as base image if BASE_DISTRIBUTION=default
5
-# hadolint ignore=DL3006
6
-FROM istionightly/base_debug as default
7
-# hadolint ignore=DL3005,DL3008
8
-RUN apt-get update && apt-get install -y --no-install-recommends ca-certificates && update-ca-certificates && apt-get clean  && rm -rf /var/lib/apt/lists/*
8
+FROM docker.io/istio/base:${BASE_VERSION} as default
9 9
 
10 10
 # The following section is used as base image if BASE_DISTRIBUTION=distroless
11 11
 # hadolint ignore=DL3007

+ 5
- 1
security/docker/Dockerfile.node-agent-test View File

@@ -1,4 +1,8 @@
1
-FROM ubuntu:xenial
1
+# Version is the base image version from the TLD Makefile
2
+ARG BASE_VERSION=latest
3
+
4
+# The following section is used as base image if BASE_DISTRIBUTION=default
5
+FROM docker.io/istio/base:${BASE_VERSION} as default
2 6
 
3 7
 COPY node_agent /usr/local/bin/node_agent
4 8
 

+ 6
- 2
security/docker/Dockerfile.sdsclient View File

@@ -1,5 +1,9 @@
1
-# hadolint ignore=DL3006
2
-FROM istionightly/base_debug
1
+# Version is the base image version from the TLD Makefile
2
+ARG BASE_VERSION=latest
3
+
4
+# The following section is used as base image if BASE_DISTRIBUTION=default
5
+FROM docker.io/istio/base:${BASE_VERSION} as default
6
+
3 7
 COPY sdsclient /
4 8
 RUN chmod 755 /sdsclient
5 9
 ENTRYPOINT ["/sdsclient"]

+ 4
- 3
sidecar-injector/docker/Dockerfile.sidecar_injector View File

@@ -1,10 +1,11 @@
1 1
 # BASE_DISTRIBUTION is used to switch between the old base distribution and distroless base images
2 2
 ARG BASE_DISTRIBUTION=default
3 3
 
4
+# Version is the base image version from the TLD Makefile
5
+ARG BASE_VERSION=latest
6
+
4 7
 # The following section is used as base image if BASE_DISTRIBUTION=default
5
-# No tag available https://hub.docker.com/_/scratch?tab=description
6
-# hadolint ignore=DL3006
7
-FROM scratch as default
8
+FROM docker.io/istio/base:${BASE_VERSION} as default
8 9
 
9 10
 # The following section is used as base image if BASE_DISTRIBUTION=distroless
10 11
 # hadolint ignore=DL3007

+ 20
- 7
tools/istio-docker.mk View File

@@ -21,6 +21,7 @@
21 21
 # It does not upload to a registry.
22 22
 docker: build-linux test-bins-linux docker.all
23 23
 
24
+# Add new docker targets to the end of the DOCKER_TARGETS list.
24 25
 DOCKER_TARGETS:=docker.pilot docker.proxy_debug docker.proxytproxy docker.proxyv2 docker.app docker.app_sidecar docker.test_policybackend \
25 26
 	docker.proxy_init docker.mixer docker.mixer_codegen docker.citadel docker.galley docker.sidecar_injector docker.kubectl docker.node-agent-k8s
26 27
 
@@ -79,15 +80,13 @@ $(foreach FILE,$(DOCKER_FILES_FROM_ISTIO_BIN), \
79 80
 
80 81
 # pilot docker images
81 82
 
83
+docker.proxy_init: BUILD_ARGS=--build-arg BASE_VERSION=${BASE_VERSION}
82 84
 docker.proxy_init: pilot/docker/Dockerfile.proxy_init
83 85
 docker.proxy_init: $(ISTIO_DOCKER)/istio-iptables.sh
84 86
 docker.proxy_init: $(ISTIO_DOCKER)/istio-iptables
85
-	# Ensure ubuntu:xenial, the base image for proxy_init, is present so build doesn't fail on network hiccup
86
-	if [[ "$(docker images -q ubuntu:xenial 2> /dev/null)" == "" ]]; then \
87
-		docker pull ubuntu:xenial || (sleep 15 ; docker pull ubuntu:xenial) || (sleep 45 ; docker pull ubuntu:xenial) \
88
-	fi
89 87
 	$(DOCKER_RULE)
90 88
 
89
+docker.sidecar_injector: BUILD_ARGS=--build-arg BASE_VERSION=${BASE_VERSION}
91 90
 docker.sidecar_injector: sidecar-injector/docker/Dockerfile.sidecar_injector
92 91
 docker.sidecar_injector:$(ISTIO_DOCKER)/sidecar-injector
93 92
 	$(DOCKER_RULE)
@@ -96,7 +95,7 @@ docker.sidecar_injector:$(ISTIO_DOCKER)/sidecar-injector
96 95
 # BUILD_ARGS tells  $(DOCKER_RULE) to execute a docker build with the specified commands
97 96
 
98 97
 docker.proxy_debug: BUILD_PRE=$(if $(filter 1,${USE_LOCAL_PROXY}),,mv envoy-debug-${PROXY_REPO_SHA} envoy &&) chmod 755 envoy pilot-agent &&
99
-docker.proxy_debug: BUILD_ARGS=--build-arg proxy_version=istio-proxy:${PROXY_REPO_SHA} --build-arg istio_version=${VERSION} --build-arg ISTIO_API_SHA=${ISTIO_PROXY_ISTIO_API_SHA_LABEL} --build-arg ENVOY_SHA=${ISTIO_PROXY_ENVOY_SHA_LABEL}
98
+docker.proxy_debug: BUILD_ARGS=--build-arg proxy_version=istio-proxy:${PROXY_REPO_SHA} --build-arg istio_version=${VERSION} --build-arg BASE_VERSION=${BASE_VERSION} --build-arg ISTIO_API_SHA=${ISTIO_PROXY_ISTIO_API_SHA_LABEL} --build-arg ENVOY_SHA=${ISTIO_PROXY_ENVOY_SHA_LABEL}
100 99
 docker.proxy_debug: pilot/docker/Dockerfile.proxy_debug
101 100
 docker.proxy_debug: tools/packaging/common/envoy_bootstrap_v2.json
102 101
 docker.proxy_debug: tools/packaging/common/envoy_bootstrap_drain.json
@@ -117,7 +116,7 @@ ${ISTIO_ENVOY_LINUX_RELEASE_DIR}/envoy: ${ISTIO_ENVOY_LINUX_RELEASE_PATH}
117 116
 
118 117
 # Default proxy image.
119 118
 docker.proxyv2: BUILD_PRE=chmod 755 envoy pilot-agent &&
120
-docker.proxyv2: BUILD_ARGS=--build-arg proxy_version=istio-proxy:${PROXY_REPO_SHA} --build-arg istio_version=${VERSION} --build-arg ISTIO_API_SHA=${ISTIO_PROXY_ISTIO_API_SHA_LABEL} --build-arg ENVOY_SHA=${ISTIO_PROXY_ENVOY_SHA_LABEL}
119
+docker.proxyv2: BUILD_ARGS=--build-arg proxy_version=istio-proxy:${PROXY_REPO_SHA} --build-arg istio_version=${VERSION} --build-arg ISTIO_API_SHA=${ISTIO_PROXY_ISTIO_API_SHA_LABEL} --build-arg ENVOY_SHA=${ISTIO_PROXY_ENVOY_SHA_LABEL} --build-arg BASE_VERSION=${BASE_VERSION}
121 120
 docker.proxyv2: tools/packaging/common/envoy_bootstrap_v2.json
122 121
 docker.proxyv2: tools/packaging/common/envoy_bootstrap_drain.json
123 122
 docker.proxyv2: install/gcp/bootstrap/gcp_envoy_bootstrap.json
@@ -132,7 +131,7 @@ docker.proxyv2: pilot/docker/envoy_telemetry.yaml.tmpl
132 131
 	$(DOCKER_RULE)
133 132
 
134 133
 # Proxy using TPROXY interception - but no core dumps
135
-docker.proxytproxy: BUILD_ARGS=--build-arg proxy_version=istio-proxy:${PROXY_REPO_SHA} --build-arg istio_version=${VERSION} --build-arg ISTIO_API_SHA=${ISTIO_PROXY_ISTIO_API_SHA_LABEL} --build-arg ENVOY_SHA=${ISTIO_PROXY_ENVOY_SHA_LABEL}
134
+docker.proxytproxy: BUILD_ARGS=--build-arg proxy_version=istio-proxy:${PROXY_REPO_SHA} --build-arg istio_version=${VERSION} --build-arg ISTIO_API_SHA=${ISTIO_PROXY_ISTIO_API_SHA_LABEL} --build-arg ENVOY_SHA=${ISTIO_PROXY_ENVOY_SHA_LABEL} --build-arg BASE_VERSION=${BASE_VERSION}
136 135
 docker.proxytproxy: tools/packaging/common/envoy_bootstrap_v2.json
137 136
 docker.proxytproxy: tools/packaging/common/envoy_bootstrap_drain.json
138 137
 docker.proxytproxy: install/gcp/bootstrap/gcp_envoy_bootstrap.json
@@ -146,6 +145,7 @@ docker.proxytproxy: tools/packaging/common/istio-iptables.sh
146 145
 docker.proxytproxy: pilot/docker/envoy_telemetry.yaml.tmpl
147 146
 	$(DOCKER_RULE)
148 147
 
148
+docker.pilot: BUILD_ARGS=--build-arg BASE_VERSION=${BASE_VERSION}
149 149
 docker.pilot: $(ISTIO_OUT_LINUX)/pilot-discovery
150 150
 docker.pilot: tests/testdata/certs/cacert.pem
151 151
 docker.pilot: pilot/docker/Dockerfile.pilot
@@ -190,52 +190,62 @@ docker.app_sidecar: pilot/docker/envoy_telemetry.yaml.tmpl
190 190
 	$(DOCKER_RULE)
191 191
 
192 192
 # Test policy backend for mixer integration
193
+docker.test_policybackend: BUILD_ARGS=--build-arg BASE_VERSION=${BASE_VERSION}
193 194
 docker.test_policybackend: mixer/docker/Dockerfile.test_policybackend
194 195
 docker.test_policybackend: $(ISTIO_OUT_LINUX)/mixer-test-policybackend
195 196
 	$(DOCKER_RULE)
196 197
 
198
+docker.kubectl: BUILD_ARGS=--build-arg BASE_VERSION=${BASE_VERSION}
197 199
 docker.kubectl: docker/Dockerfile$$(suffix $$@)
198 200
 	$(DOCKER_RULE)
199 201
 
200 202
 # mixer docker images
201 203
 
204
+docker.mixer: BUILD_ARGS=--build-arg BASE_VERSION=${BASE_VERSION}
202 205
 docker.mixer: mixer/docker/Dockerfile.mixer
203 206
 docker.mixer: $(ISTIO_DOCKER)/mixs
204 207
 docker.mixer: $(ISTIO_DOCKER)/ca-certificates.tgz
205 208
 	$(DOCKER_RULE)
206 209
 
207 210
 # mixer codegen docker images
211
+docker.mixer_codegen: BUILD_ARGS=--build-arg BASE_VERSION=${BASE_VERSION}
208 212
 docker.mixer_codegen: mixer/docker/Dockerfile.mixer_codegen
209 213
 docker.mixer_codegen: $(ISTIO_DOCKER)/mixgen
210 214
 	$(DOCKER_RULE)
211 215
 
212 216
 # galley docker images
213 217
 
218
+docker.galley: BUILD_ARGS=--build-arg BASE_VERSION=${BASE_VERSION}
214 219
 docker.galley: galley/docker/Dockerfile.galley
215 220
 docker.galley: $(ISTIO_DOCKER)/galley
216 221
 	$(DOCKER_RULE)
217 222
 
218 223
 # security docker images
219 224
 
225
+docker.citadel: BUILD_ARGS=--build-arg BASE_VERSION=${BASE_VERSION}
220 226
 docker.citadel: security/docker/Dockerfile.citadel
221 227
 docker.citadel: $(ISTIO_DOCKER)/istio_ca
222 228
 docker.citadel: $(ISTIO_DOCKER)/ca-certificates.tgz
223 229
 	$(DOCKER_RULE)
224 230
 
231
+docker.citadel-test: BUILD_ARGS=--build-arg BASE_VERSION=${BASE_VERSION}
225 232
 docker.citadel-test: security/docker/Dockerfile.citadel-test
226 233
 docker.citadel-test: $(ISTIO_DOCKER)/istio_ca
227 234
 docker.citadel-test: $(ISTIO_DOCKER)/istio_ca.crt
228 235
 docker.citadel-test: $(ISTIO_DOCKER)/istio_ca.key
229 236
 	$(DOCKER_RULE)
230 237
 
238
+docker.node-agent: BUILD_ARGS=--build-arg BASE_VERSION=${BASE_VERSION}
231 239
 docker.node-agent: security/docker/Dockerfile.node-agent
232 240
 docker.node-agent: $(ISTIO_DOCKER)/node_agent
233 241
 	$(DOCKER_RULE)
234 242
 
243
+docker.node-agent-k8s: BUILD_ARGS=--build-arg BASE_VERSION=${BASE_VERSION}
235 244
 docker.node-agent-k8s: security/docker/Dockerfile.node-agent-k8s
236 245
 docker.node-agent-k8s: $(ISTIO_DOCKER)/node_agent_k8s
237 246
 	$(DOCKER_RULE)
238 247
 
248
+docker.node-agent-test: BUILD_ARGS=--build-arg BASE_VERSION=${BASE_VERSION}
239 249
 docker.node-agent-test: security/docker/Dockerfile.node-agent-test
240 250
 docker.node-agent-test: $(ISTIO_DOCKER)/node_agent
241 251
 docker.node-agent-test: $(ISTIO_DOCKER)/istio_ca.crt
@@ -243,6 +253,9 @@ docker.node-agent-test: $(ISTIO_DOCKER)/node_agent.crt
243 253
 docker.node-agent-test: $(ISTIO_DOCKER)/node_agent.key
244 254
 	$(DOCKER_RULE)
245 255
 
256
+docker.base: docker/Dockerfile.base
257
+	$(DOCKER_RULE)
258
+
246 259
 # $@ is the name of the target
247 260
 # $^ the name of the dependencies for the target
248 261
 # Rule Steps #

+ 6
- 0
tools/packaging/deb/Dockerfile View File

@@ -1,5 +1,11 @@
1 1
 # Base dockerfile containing ubuntu and istio debian.
2 2
 # Can be used for testing
3
+# ISTIO_VERSION is used to specify the version of the release
4
+ARG BASE_VERSION=latest
5
+
6
+# The following section is used as base image if BASE_DISTRIBUTION=default
7
+FROM docker.io/istio/base:${BASE_VERSION}
8
+
3 9
 # hadolint ignore=DL3006
4 10
 FROM istionightly/base_debug
5 11
 

Loading…
Cancel
Save