Skip to content

Commit

Permalink
Address code review feedback
Browse files Browse the repository at this point in the history
- Specify mobyBuildxVersion in devcontainer-feature.json with pinned and commented default value
- Bump minor version
- Leverage default value in install.sh
- Only set buildx_version_suffix when installing moby
  • Loading branch information
sayhiben authored Feb 10, 2024
1 parent b715b47 commit 4ebad36
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 11 deletions.
7 changes: 6 additions & 1 deletion src/docker-in-docker/devcontainer-feature.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"id": "docker-in-docker",
"version": "2.8.1",
"version": "2.9.0",
"name": "Docker (Docker-in-Docker)",
"documentationURL": "https://github.com/devcontainers/features/tree/main/src/docker-in-docker",
"description": "Create child containers *inside* a container, independent from the host's docker instance. Installs Docker extension in the container along with needed CLIs.",
Expand All @@ -20,6 +20,11 @@
"default": true,
"description": "Install OSS Moby build instead of Docker CE"
},
"mobyBuildxVersion": {
"type": "string",
"default": "0.12.0-ubuntu20.04u1", // 2024-02-09 Microsoft's Package Manifest has mismatching filesize and SHA for 0.12.1; default to last known good version
"description": "Install a specific version of moby-buildx when using Moby"
},
"dockerDashComposeVersion": {
"type": "string",
"enum": [
Expand Down
20 changes: 10 additions & 10 deletions src/docker-in-docker/install.sh
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@

DOCKER_VERSION="${VERSION:-"latest"}" # The Docker/Moby Engine + CLI should match in version
USE_MOBY="${MOBY:-"true"}"
MOBY_BUILDX_VERSION="${MOBYBUILDXVERSION:-"latest"}"
MOBY_BUILDX_VERSION="${MOBYBUILDXVERSION}"
DOCKER_DASH_COMPOSE_VERSION="${DOCKERDASHCOMPOSEVERSION:-"v1"}" # v1 or v2 or none
AZURE_DNS_AUTO_DETECTION="${AZUREDNSAUTODETECTION:-"true"}"
DOCKER_DEFAULT_ADDRESS_POOL="${DOCKERDEFAULTADDRESSPOOL}"
Expand Down Expand Up @@ -199,20 +199,20 @@ else
echo "cli_version_suffix ${cli_version_suffix}"
fi

# Buildx version matching
if [ "${MOBY_BUILDX_VERSION}" = "latest" ]; then
# Empty, meaning grab whatever "latest" is in apt repo
buildx_version_suffix=""
else
buildx_version_suffix="=${MOBY_BUILDX_VERSION}"
echo "buildx_version_suffix ${buildx_version_suffix}"
fi

# Install Docker / Moby CLI if not already installed
if type docker > /dev/null 2>&1 && type dockerd > /dev/null 2>&1; then
echo "Docker / Moby CLI and Engine already installed."
else
if [ "${USE_MOBY}" = "true" ]; then
# Buildx version matching
if [ "${MOBY_BUILDX_VERSION}" = "latest" ]; then
# Empty, meaning grab whatever "latest" is in apt repo
buildx_version_suffix=""
else
buildx_version_suffix="=${MOBY_BUILDX_VERSION}"
echo "buildx_version_suffix ${buildx_version_suffix}"
fi

# Install engine
set +e # Handle error gracefully
apt-get -y install --no-install-recommends moby-cli${cli_version_suffix} moby-buildx${buildx_version_suffix} moby-engine${engine_version_suffix}
Expand Down

0 comments on commit 4ebad36

Please sign in to comment.