Simplify DEBIAN_FRONTEND guidence, common scripts
This commit is contained in:
Родитель
abab1276b4
Коммит
ab0f9d2252
|
@ -7,13 +7,7 @@ FROM REPLACE-ME
|
|||
|
||||
# ** [Optional] Uncomment this section to install additional packages. **
|
||||
#
|
||||
# ENV DEBIAN_FRONTEND=noninteractive
|
||||
# ARG DEBIAN_FRONTEND=noninteractive
|
||||
# RUN apt-get update \
|
||||
# && apt-get -y install --no-install-recommends <your-package-list-here> \
|
||||
# #
|
||||
# # Clean up
|
||||
# && apt-get autoremove -y \
|
||||
# && apt-get clean -y \
|
||||
# && rm -rf /var/lib/apt/lists/*
|
||||
# ENV DEBIAN_FRONTEND=dialog
|
||||
# && apt-get -y install --no-install-recommends <your-package-list-here>
|
||||
|
||||
|
|
|
@ -7,7 +7,4 @@ FROM REPLACE-ME
|
|||
|
||||
# ** [Optional] Uncomment this section to install additional packages. **
|
||||
#
|
||||
# RUN yum -y install <your-package-list-here> \
|
||||
# #
|
||||
# # Clean up
|
||||
# && yum clean all
|
||||
# RUN yum -y install <your-package-list-here>
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
# * Compose but has been included here for completeness. *
|
||||
# **********************************************************
|
||||
|
||||
FROM debian:9
|
||||
FROM mcr.microsoft.com/vscode/devcontainers/base:debian-10
|
||||
|
||||
# This Dockerfile adds a non-root user with sudo access. Use the "remoteUser"
|
||||
# property in devcontainer.json to use it. On Linux, the container user's GID/UIDs
|
||||
|
@ -18,24 +18,21 @@ ARG USERNAME=vscode
|
|||
ARG USER_UID=1000
|
||||
ARG USER_GID=$USER_UID
|
||||
|
||||
# Set to false to skip installing zsh and Oh My ZSH!
|
||||
# Options for common package install script - SHA updated on release
|
||||
ARG INSTALL_ZSH="true"
|
||||
|
||||
# Location and expected SHA for common setup script - SHA generated on release
|
||||
ARG UPGRADE_PACKAGES="true"
|
||||
ARG COMMON_SCRIPT_SOURCE="https://raw.githubusercontent.com/microsoft/vscode-dev-containers/master/script-library/common-debian.sh"
|
||||
ARG COMMON_SCRIPT_SHA="dev-mode"
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# Configure apt and install packages
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install --no-install-recommends apt-utils dialog wget ca-certificates 2>&1 \
|
||||
#
|
||||
# Verify git, common tools / libs installed, add/modify non-root user, optionally install zsh
|
||||
&& wget -q -O /tmp/common-setup.sh $COMMON_SCRIPT_SOURCE \
|
||||
&& if [ "$COMMON_SCRIPT_SHA" != "dev-mode" ]; then echo "$COMMON_SCRIPT_SHA /tmp/common-setup.sh" | sha256sum -c - ; fi \
|
||||
&& /bin/bash /tmp/common-setup.sh "$INSTALL_ZSH" "$USERNAME" "$USER_UID" "$USER_GID" \
|
||||
&& apt-get -y install --no-install-recommends curl ca-certificates 2>&1 \
|
||||
&& curl -sSL ${COMMON_SCRIPT_SOURCE} -o /tmp/common-setup.sh \
|
||||
&& ([ "${COMMON_SCRIPT_SHA}" = "dev-mode" ] || (echo "${COMMON_SCRIPT_SHA} /tmp/common-setup.sh" | sha256sum -c -)) \
|
||||
&& /bin/bash /tmp/common-setup.sh "${INSTALL_ZSH}" "${USERNAME}" "${USER_UID}" "${USER_GID}" "${UPGRADE_PACKAGES}" \
|
||||
&& rm /tmp/common-setup.sh \
|
||||
#
|
||||
# *********************************************************************
|
||||
|
@ -48,7 +45,4 @@ RUN apt-get update \
|
|||
&& apt-get autoremove -y \
|
||||
&& apt-get clean -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Switch back to dialog for any ad-hoc use of apt-get
|
||||
ENV DEBIAN_FRONTEND=dialog
|
||||
|
||||
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
# Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
# Licensed under the MIT License. See https://go.microsoft.com/fwlink/?linkid=2090316 for license information.
|
||||
#-------------------------------------------------------------------------------------------------------------
|
||||
FROM debian:9
|
||||
FROM mcr.microsoft.com/vscode/devcontainers/base:debian-10
|
||||
|
||||
# This Dockerfile adds a non-root user with sudo access. Use the "remoteUser"
|
||||
# property in devcontainer.json to use it. On Linux, the container user's GID/UIDs
|
||||
|
@ -12,24 +12,21 @@ ARG USERNAME=vscode
|
|||
ARG USER_UID=1000
|
||||
ARG USER_GID=$USER_UID
|
||||
|
||||
# Set to false to skip installing zsh and Oh My ZSH!
|
||||
# Options for common package install script - SHA updated on release
|
||||
ARG INSTALL_ZSH="true"
|
||||
|
||||
# Location and expected SHA for common setup script - SHA generated on release
|
||||
ARG UPGRADE_PACKAGES="true"
|
||||
ARG COMMON_SCRIPT_SOURCE="https://raw.githubusercontent.com/microsoft/vscode-dev-containers/master/script-library/common-debian.sh"
|
||||
ARG COMMON_SCRIPT_SHA="dev-mode"
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# Configure apt and install packages
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install --no-install-recommends apt-utils dialog wget ca-certificates 2>&1 \
|
||||
#
|
||||
# Verify git, common tools / libs installed, add/modify non-root user, optionally install zsh
|
||||
&& wget -q -O /tmp/common-setup.sh $COMMON_SCRIPT_SOURCE \
|
||||
&& if [ "$COMMON_SCRIPT_SHA" != "dev-mode" ]; then echo "$COMMON_SCRIPT_SHA /tmp/common-setup.sh" | sha256sum -c - ; fi \
|
||||
&& /bin/bash /tmp/common-setup.sh "$INSTALL_ZSH" "$USERNAME" "$USER_UID" "$USER_GID" \
|
||||
&& apt-get -y install --no-install-recommends curl ca-certificates 2>&1 \
|
||||
&& curl -sSL ${COMMON_SCRIPT_SOURCE} -o /tmp/common-setup.sh \
|
||||
&& ([ "${COMMON_SCRIPT_SHA}" = "dev-mode" ] || (echo "${COMMON_SCRIPT_SHA} /tmp/common-setup.sh" | sha256sum -c -)) \
|
||||
&& /bin/bash /tmp/common-setup.sh "${INSTALL_ZSH}" "${USERNAME}" "${USER_UID}" "${USER_GID}" "${UPGRADE_PACKAGES}" \
|
||||
&& rm /tmp/common-setup.sh \
|
||||
#
|
||||
# *********************************************************************
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
"name": "Dev Container Definition Template - Container Image",
|
||||
|
||||
// Update the 'image' property with your Docker image name.
|
||||
"image": "ubuntu:18.04",
|
||||
"image": "mcr.microsoft.com/vscode/devcontainers/base:debian-10",
|
||||
|
||||
// Set *default* container specific settings.json values on container create.
|
||||
"settings": {
|
||||
|
|
|
@ -12,19 +12,17 @@ ARG USERNAME=vscode
|
|||
ARG USER_UID=1000
|
||||
ARG USER_GID=$USER_UID
|
||||
|
||||
# Set to false to skip installing zsh and Oh My ZSH!
|
||||
# Options for common package install script - SHA updated on release
|
||||
ARG INSTALL_ZSH="true"
|
||||
|
||||
# Location and expected SHA for common setup script - SHA generated on release
|
||||
ARG COMMON_SCRIPT_SOURCE="https://raw.githubusercontent.com/microsoft/vscode-dev-containers/master/script-library/common-alpine.sh"
|
||||
ARG COMMON_SCRIPT_SHA="dev-mode"
|
||||
|
||||
# Install git, bash, dependencies, and add a non-root user
|
||||
RUN apk update \
|
||||
&& apk add --no-cache wget coreutils ca-certificates \
|
||||
#
|
||||
# Verify git, common tools / libs installed, add/modify non-root user, optionally install zsh
|
||||
&& wget -q -O /tmp/common-setup.sh $COMMON_SCRIPT_SOURCE \
|
||||
&& if [ "$COMMON_SCRIPT_SHA" != "dev-mode" ]; then echo "$COMMON_SCRIPT_SHA /tmp/common-setup.sh" | sha256sum -c - ; fi \
|
||||
&& /bin/ash /tmp/common-setup.sh "$INSTALL_ZSH" "$USERNAME" "$USER_UID" "$USER_GID" \
|
||||
&& apt-get -y install --no-install-recommends curl ca-certificates 2>&1 \
|
||||
&& curl -sSL ${COMMON_SCRIPT_SOURCE} -o /tmp/common-setup.sh \
|
||||
&& ([ "${COMMON_SCRIPT_SHA}" = "dev-mode" ] || (echo "${COMMON_SCRIPT_SHA} /tmp/common-setup.sh" | sha256sum -c -)) \
|
||||
&& /bin/bash /tmp/common-setup.sh "${INSTALL_ZSH}" "${USERNAME}" "${USER_UID}" "${USER_GID}" \
|
||||
&& rm /tmp/common-setup.sh
|
||||
|
|
|
@ -4,10 +4,7 @@
|
|||
#-------------------------------------------------------------------------------------------------------------
|
||||
|
||||
# Pick any base image, but if you select node, skip installing node. 😊
|
||||
FROM debian:9
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
FROM mcr.microsoft.com/vscode/devcontainers/base:debian-9
|
||||
|
||||
# This Dockerfile adds a non-root user with sudo access. Use the "remoteUser"
|
||||
# property in devcontainer.json to use it. On Linux, the container user's GID/UIDs
|
||||
|
@ -18,6 +15,7 @@ ARG USER_UID=1000
|
|||
ARG USER_GID=$USER_UID
|
||||
|
||||
# Configure apt and install packages
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install --no-install-recommends apt-utils dialog 2>&1 \
|
||||
#
|
||||
|
@ -74,6 +72,3 @@ RUN apt-get update \
|
|||
&& apt-get clean -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Switch back to dialog for any ad-hoc use of apt-get
|
||||
ENV DEBIAN_FRONTEND=dialog
|
||||
|
||||
|
|
|
@ -5,9 +5,6 @@
|
|||
|
||||
FROM python:2.7-stretch
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# This Dockerfile adds a non-root user with sudo access. Use the "remoteUser"
|
||||
# property in devcontainer.json to use it. On Linux, the container user's GID/UIDs
|
||||
# will be updated to match your local UID/GID (when using the dockerFile property).
|
||||
|
@ -17,6 +14,7 @@ ARG USER_UID=1000
|
|||
ARG USER_GID=$USER_UID
|
||||
|
||||
# Configure apt and install packages
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install --no-install-recommends apt-utils dialog 2>&1 \
|
||||
#
|
||||
|
@ -53,5 +51,3 @@ RUN apt-get update \
|
|||
&& apt-get clean -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Switch back to dialog for any ad-hoc use of apt-get
|
||||
ENV DEBIAN_FRONTEND=dialog
|
||||
|
|
|
@ -3,10 +3,7 @@
|
|||
# Licensed under the MIT License. See https://go.microsoft.com/fwlink/?linkid=2090316 for license information.
|
||||
#-------------------------------------------------------------------------------------------------------------
|
||||
|
||||
FROM debian:9
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
FROM mcr.microsoft.com/vscode/devcontainers/base:debian-9
|
||||
|
||||
# This Dockerfile adds a non-root user with sudo access. Use the "remoteUser"
|
||||
# property in devcontainer.json to use it. On Linux, the container user's GID/UIDs
|
||||
|
@ -17,6 +14,7 @@ ARG USER_UID=1000
|
|||
ARG USER_GID=$USER_UID
|
||||
|
||||
# Configure apt and install packages
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install --no-install-recommends apt-utils dialog 2>&1 \
|
||||
#
|
||||
|
|
|
@ -5,9 +5,6 @@
|
|||
|
||||
FROM mcr.microsoft.com/dotnet/core/sdk:2.1
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# This Dockerfile adds a non-root user with sudo access. Use the "remoteUser"
|
||||
# property in devcontainer.json to use it. On Linux, the container user's GID/UIDs
|
||||
# will be updated to match your local UID/GID (when using the dockerFile property).
|
||||
|
@ -17,6 +14,7 @@ ARG USER_UID=1000
|
|||
ARG USER_GID=$USER_UID
|
||||
|
||||
# Configure apt and install packages
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install --no-install-recommends apt-utils dialog 2>&1 \
|
||||
#
|
||||
|
@ -51,6 +49,3 @@ RUN apt-get update \
|
|||
&& apt-get autoremove -y \
|
||||
&& apt-get clean -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Switch back to dialog for any ad-hoc use of apt-get
|
||||
ENV DEBIAN_FRONTEND=dialog
|
||||
|
|
|
@ -5,9 +5,6 @@
|
|||
|
||||
FROM mcr.microsoft.com/dotnet/core/sdk:3.1
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# This Dockerfile adds a non-root user with sudo access. Use the "remoteUser"
|
||||
# property in devcontainer.json to use it. On Linux, the container user's GID/UIDs
|
||||
# will be updated to match your local UID/GID (when using the dockerFile property).
|
||||
|
@ -17,6 +14,7 @@ ARG USER_UID=1000
|
|||
ARG USER_GID=$USER_UID
|
||||
|
||||
# Configure apt and install packages
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install --no-install-recommends apt-utils dialog 2>&1 \
|
||||
#
|
||||
|
@ -58,6 +56,3 @@ RUN apt-get update \
|
|||
|
||||
# Uncomment to opt out of Func CLI telemetry gathering
|
||||
#ENV FUNCTIONS_CORE_TOOLS_TELEMETRY_OPTOUT=true
|
||||
|
||||
# Switch back to dialog for any ad-hoc use of apt-get
|
||||
ENV DEBIAN_FRONTEND=dialog
|
|
@ -5,9 +5,6 @@
|
|||
|
||||
FROM mcr.microsoft.com/vscode/devcontainers/javascript-node:10
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# The javascript-node image includes a non-root user with sudo access. Use the "remoteUser"
|
||||
# property in devcontainer.json to use it. On Linux, the container user's GID/UIDs
|
||||
# will be updated to match your local UID/GID (when using the dockerFile property).
|
||||
|
@ -17,6 +14,7 @@ ARG USER_UID=1000
|
|||
ARG USER_GID=$USER_UID
|
||||
|
||||
# Configure apt and install packages
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
#
|
||||
# Install Azure Functions, .NET Core, and Azure CLI
|
||||
|
@ -41,6 +39,3 @@ RUN apt-get update \
|
|||
|
||||
# Azure Functions Core Tools needs a place to save data
|
||||
ENV XDG_DATA_HOME=/home/$USERNAME/.local/share
|
||||
|
||||
# Switch back to dialog for any ad-hoc use of apt-get
|
||||
ENV DEBIAN_FRONTEND=dialog
|
|
@ -5,9 +5,6 @@
|
|||
|
||||
FROM mcr.microsoft.com/vscode/devcontainers/javascript-node:12
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# The javascript-node image includes a non-root user with sudo access. Use the "remoteUser"
|
||||
# property in devcontainer.json to use it. On Linux, the container user's GID/UIDs
|
||||
# will be updated to match your local UID/GID (when using the dockerFile property).
|
||||
|
@ -17,6 +14,7 @@ ARG USER_UID=1000
|
|||
ARG USER_GID=$USER_UID
|
||||
|
||||
# Configure apt and install packages
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
#
|
||||
# Install Azure Functions, .NET Core, and Azure CLI
|
||||
|
@ -41,6 +39,3 @@ RUN apt-get update \
|
|||
|
||||
# Azure Functions Core Tools needs a place to save data
|
||||
ENV XDG_DATA_HOME=/home/$USERNAME/.local/share
|
||||
|
||||
# Switch back to dialog for any ad-hoc use of apt-get
|
||||
ENV DEBIAN_FRONTEND=dialog
|
|
@ -1,9 +1,6 @@
|
|||
|
||||
FROM mcr.microsoft.com/dotnet/core/sdk:2.1
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# This Dockerfile adds a non-root user with sudo access. Use the "remoteUser"
|
||||
# property in devcontainer.json to use it. On Linux, the container user's GID/UIDs
|
||||
# will be updated to match your local UID/GID (when using the dockerFile property).
|
||||
|
@ -29,6 +26,7 @@ ENV DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=false \
|
|||
ENV FUNCTIONS_WORKER_RUNTIME=powershell
|
||||
|
||||
# Configure apt and install packages
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install --no-install-recommends apt-utils dialog 2>&1 \
|
||||
&& apt install -y /tmp/powershell.deb \
|
||||
|
@ -90,5 +88,3 @@ RUN apt-get update \
|
|||
Start-Sleep -Seconds 6 ; \
|
||||
}"
|
||||
|
||||
# Switch back to dialog for any ad-hoc use of apt-get
|
||||
ENV DEBIAN_FRONTEND=
|
||||
|
|
|
@ -5,10 +5,8 @@
|
|||
|
||||
FROM mcr.microsoft.com/vscode/devcontainers/python:3.8
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# Configure apt and install packages
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN \
|
||||
#
|
||||
# Install Azure Functions, .NET Core, and Azure CLI
|
||||
|
@ -34,6 +32,3 @@ RUN \
|
|||
|
||||
# Azure Functions Core Tools needs a place to save data
|
||||
ENV XDG_DATA_HOME=/home/vscode/.local/share
|
||||
|
||||
# Switch back to dialog for any ad-hoc use of apt-get
|
||||
ENV DEBIAN_FRONTEND=dialog
|
||||
|
|
|
@ -24,10 +24,8 @@ ARG CONDA_INSTALL_PATH=/opt/conda
|
|||
ENV PATH=${CONDA_INSTALL_PATH}/bin:${PATH}
|
||||
ENV LANG=C.UTF-8 LC_ALL=C.UTF-8
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# Configure apt and install packages
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
#
|
||||
# Alter vscode user as needed
|
||||
|
@ -74,6 +72,3 @@ RUN apt-get update \
|
|||
&& apt-get autoremove -y \
|
||||
&& apt-get clean -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Switch back to dialog for any ad-hoc use of apt-get
|
||||
ENV DEBIAN_FRONTEND=dialog
|
||||
|
|
|
@ -4,10 +4,7 @@
|
|||
#-------------------------------------------------------------------------------------------------------------
|
||||
|
||||
# Pick any base image, but if you select node, skip installing node. 😊
|
||||
FROM debian:9
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
FROM mcr.microsoft.com/vscode/devcontainers/base:debian-9
|
||||
|
||||
# Terraform and tflint versions
|
||||
ARG TERRAFORM_VERSION=0.11.13
|
||||
|
@ -22,6 +19,7 @@ ARG USER_UID=1000
|
|||
ARG USER_GID=$USER_UID
|
||||
|
||||
# Configure apt and install packages
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install --no-install-recommends apt-utils dialog 2>&1 \
|
||||
#
|
||||
|
@ -84,6 +82,3 @@ RUN apt-get update \
|
|||
&& apt-get autoremove -y \
|
||||
&& apt-get clean -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Switch back to dialog for any ad-hoc use of apt-get
|
||||
ENV DEBIAN_FRONTEND=dialog
|
|
@ -4,10 +4,7 @@
|
|||
#-------------------------------------------------------------------------------------------------------------
|
||||
|
||||
# Pick any base image, but if you select node, skip installing node. 😊
|
||||
FROM debian:9
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
FROM mcr.microsoft.com/vscode/devcontainers/base:debian-9
|
||||
|
||||
# Terraform and tflint versions
|
||||
ARG TERRAFORM_VERSION=0.12.16
|
||||
|
@ -22,6 +19,7 @@ ARG USER_UID=1000
|
|||
ARG USER_GID=$USER_UID
|
||||
|
||||
# Configure apt and install packages
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install --no-install-recommends apt-utils dialog 2>&1 \
|
||||
#
|
||||
|
@ -84,6 +82,3 @@ RUN apt-get update \
|
|||
&& apt-get autoremove -y \
|
||||
&& apt-get clean -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Switch back to dialog for any ad-hoc use of apt-get
|
||||
ENV DEBIAN_FRONTEND=dialog
|
|
@ -2,10 +2,7 @@
|
|||
# Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
# Licensed under the MIT License. See https://go.microsoft.com/fwlink/?linkid=2090316 for license information.
|
||||
#-------------------------------------------------------------------------------------------------------------
|
||||
FROM debian:9
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
FROM mcr.microsoft.com/vscode/devcontainers/base:debian-9
|
||||
|
||||
# Bazel version and hash
|
||||
ENV BAZEL_VERSION=0.25.2
|
||||
|
@ -20,6 +17,7 @@ ARG USER_UID=1000
|
|||
ARG USER_GID=$USER_UID
|
||||
|
||||
# Configure apt and install packages
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install --no-install-recommends apt-utils dialog 2>&1 \
|
||||
#
|
||||
|
@ -50,6 +48,3 @@ RUN apt-get update \
|
|||
&& apt-get autoremove -y \
|
||||
&& apt-get clean -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Switch back to dialog for any ad-hoc use of apt-get
|
||||
ENV DEBIAN_FRONTEND=dialog
|
||||
|
|
|
@ -29,7 +29,7 @@ ENV ORYX_ENV_TYPE=vsonline-present
|
|||
ADD symlinkDotNetCore.sh /tmp/codespace/symlinkDotNetCore.sh
|
||||
|
||||
# Install packages, setup codespace user
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update -yq \
|
||||
&& apt-get -yq install --no-install-recommends apt-utils dialog 2>&1 \
|
||||
&& apt-get install -yq \
|
||||
|
@ -126,6 +126,5 @@ RUN apt-get update -yq \
|
|||
# Clean up
|
||||
&& apt-get autoremove -y \
|
||||
&& apt-get clean -y
|
||||
ENV DEBIAN_FRONTEND=dialog
|
||||
|
||||
USER codespace
|
||||
|
|
|
@ -5,9 +5,6 @@
|
|||
|
||||
FROM mcr.microsoft.com/vscode/devcontainers/base:debian-9
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# This Dockerfile's base image has a non-root user with sudo access. Use the "remoteUser"
|
||||
# property in devcontainer.json to use it. On Linux, the container user's GID/UIDs
|
||||
# will be updated to match your local UID/GID (when using the dockerFile property).
|
||||
|
@ -17,6 +14,7 @@ ARG USER_UID=1000
|
|||
ARG USER_GID=$USER_UID
|
||||
|
||||
# Configure apt and install packages
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
#
|
||||
# Install C++ tools
|
||||
|
@ -33,6 +31,3 @@ RUN apt-get update \
|
|||
&& apt-get autoremove -y \
|
||||
&& apt-get clean -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Switch back to dialog for any ad-hoc use of apt-get
|
||||
ENV DEBIAN_FRONTEND=dialog
|
||||
|
|
|
@ -21,13 +21,11 @@ ENV NVM_DIR=/home/vscode/.nvm
|
|||
# [Optional] Install the Azure CLI
|
||||
ARG INSTALL_AZURE_CLI="false"
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# Docker Compose version
|
||||
ARG COMPOSE_VERSION=1.24.0
|
||||
|
||||
# Configure apt and install packages
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install --no-install-recommends apt-utils dialog 2>&1 \
|
||||
#
|
||||
|
|
|
@ -5,9 +5,6 @@
|
|||
|
||||
FROM node:12
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# The node image includes a non-root user with sudo access. Use the "remoteUser"
|
||||
# property in devcontainer.json to use it. On Linux, the container user's GID/UIDs
|
||||
# will be updated to match your local UID/GID (when using the dockerFile property).
|
||||
|
@ -20,6 +17,7 @@ ARG USER_GID=$USER_UID
|
|||
ARG COMPOSE_VERSION=1.24.0
|
||||
|
||||
# Configure apt and install packages
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install --no-install-recommends apt-utils dialog 2>&1 \
|
||||
#
|
||||
|
@ -69,6 +67,3 @@ RUN apt-get update \
|
|||
&& apt-get autoremove -y \
|
||||
&& apt-get clean -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Switch back to dialog for any ad-hoc use of apt-get
|
||||
ENV DEBIAN_FRONTEND=dialog
|
||||
|
|
|
@ -5,9 +5,6 @@
|
|||
|
||||
FROM google/dart:2
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# Add bin location to path
|
||||
ENV PATH="$PATH":"/root/.pub-cache/bin"
|
||||
|
||||
|
@ -20,6 +17,7 @@ ARG USER_UID=1000
|
|||
ARG USER_GID=$USER_UID
|
||||
|
||||
# Configure apt and install packages
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install --no-install-recommends apt-utils dialog 2>&1 \
|
||||
#
|
||||
|
@ -39,5 +37,3 @@ RUN apt-get update \
|
|||
&& apt-get clean -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Switch back to dialog for any ad-hoc use of apt-get
|
||||
ENV DEBIAN_FRONTEND=dialog
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
# Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
# Licensed under the MIT License. See https://go.microsoft.com/fwlink/?linkid=2090316 for license information.
|
||||
#-------------------------------------------------------------------------------------------------------------
|
||||
FROM debian:10
|
||||
FROM buildpack-deps:buster-curl
|
||||
|
||||
# This Dockerfile adds a non-root user with sudo access. Use the "remoteUser"
|
||||
# property in devcontainer.json to use it. On Linux, the container user's GID/UIDs
|
||||
|
@ -12,24 +12,20 @@ ARG USERNAME=vscode
|
|||
ARG USER_UID=1000
|
||||
ARG USER_GID=$USER_UID
|
||||
|
||||
# Set to false to skip installing zsh and Oh My ZSH!
|
||||
# Options for common package install script
|
||||
ARG INSTALL_ZSH="true"
|
||||
|
||||
# Location and expected SHA for common setup script - SHA generated on release
|
||||
ARG UPGRADE_PACKAGES="true"
|
||||
ARG COMMON_SCRIPT_SOURCE="https://raw.githubusercontent.com/microsoft/vscode-dev-containers/master/script-library/common-debian.sh"
|
||||
ARG COMMON_SCRIPT_SHA="dev-mode"
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# Configure apt and install packages
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install --no-install-recommends apt-utils dialog wget ca-certificates 2>&1 \
|
||||
#
|
||||
# Verify git, common tools / libs installed, add/modify non-root user, optionally install zsh
|
||||
&& wget -q -O /tmp/common-setup.sh $COMMON_SCRIPT_SOURCE \
|
||||
&& if [ "$COMMON_SCRIPT_SHA" != "dev-mode" ]; then echo "$COMMON_SCRIPT_SHA /tmp/common-setup.sh" | sha256sum -c - ; fi \
|
||||
&& /bin/bash /tmp/common-setup.sh "$INSTALL_ZSH" "$USERNAME" "$USER_UID" "$USER_GID" \
|
||||
&& apt-get -y install --no-install-recommends curl ca-certificates 2>&1 \
|
||||
&& curl -sSL ${COMMON_SCRIPT_SOURCE} -o /tmp/common-setup.sh \
|
||||
&& ([ "${COMMON_SCRIPT_SHA}" = "dev-mode" ] || (echo "${COMMON_SCRIPT_SHA} /tmp/common-setup.sh" | sha256sum -c -)) \
|
||||
&& /bin/bash /tmp/common-setup.sh "${INSTALL_ZSH}" "${USERNAME}" "${USER_UID}" "${USER_GID}" "${UPGRADE_PACKAGES}" \
|
||||
&& rm /tmp/common-setup.sh \
|
||||
#
|
||||
# Clean up
|
||||
|
@ -37,5 +33,3 @@ RUN apt-get update \
|
|||
&& apt-get clean -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Switch back to dialog for any ad-hoc use of apt-get
|
||||
ENV DEBIAN_FRONTEND=dialog
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
# Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
# Licensed under the MIT License. See https://go.microsoft.com/fwlink/?linkid=2090316 for license information.
|
||||
#-------------------------------------------------------------------------------------------------------------
|
||||
FROM debian:9
|
||||
FROM buildpack-deps:stretch-curl
|
||||
|
||||
# This Dockerfile adds a non-root user with sudo access. Use the "remoteUser"
|
||||
# property in devcontainer.json to use it. On Linux, the container user's GID/UIDs
|
||||
|
@ -12,24 +12,21 @@ ARG USERNAME=vscode
|
|||
ARG USER_UID=1000
|
||||
ARG USER_GID=$USER_UID
|
||||
|
||||
# Set to false to skip installing zsh and Oh My ZSH!
|
||||
# Options for common package install script
|
||||
ARG INSTALL_ZSH="true"
|
||||
|
||||
# Location and expected SHA for common setup script - SHA generated on release
|
||||
ARG UPGRADE_PACKAGES="true"
|
||||
ARG COMMON_SCRIPT_SOURCE="https://raw.githubusercontent.com/microsoft/vscode-dev-containers/master/script-library/common-debian.sh"
|
||||
ARG COMMON_SCRIPT_SHA="dev-mode"
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# Configure apt and install packages
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install --no-install-recommends apt-utils dialog wget ca-certificates 2>&1 \
|
||||
#
|
||||
# Verify git, common tools / libs installed, add/modify non-root user, optionally install zsh
|
||||
&& wget -q -O /tmp/common-setup.sh $COMMON_SCRIPT_SOURCE \
|
||||
&& if [ "$COMMON_SCRIPT_SHA" != "dev-mode" ]; then echo "$COMMON_SCRIPT_SHA /tmp/common-setup.sh" | sha256sum -c - ; fi \
|
||||
&& /bin/bash /tmp/common-setup.sh "$INSTALL_ZSH" "$USERNAME" "$USER_UID" "$USER_GID" \
|
||||
&& apt-get -y install --no-install-recommends curl ca-certificates 2>&1 \
|
||||
&& curl -sSL ${COMMON_SCRIPT_SOURCE} -o /tmp/common-setup.sh \
|
||||
&& ([ "${COMMON_SCRIPT_SHA}" = "dev-mode" ] || (echo "${COMMON_SCRIPT_SHA} /tmp/common-setup.sh" | sha256sum -c -)) \
|
||||
&& /bin/bash /tmp/common-setup.sh "${INSTALL_ZSH}" "${USERNAME}" "${USER_UID}" "${USER_GID}" "${UPGRADE_PACKAGES}" \
|
||||
&& rm /tmp/common-setup.sh \
|
||||
#
|
||||
# Clean up
|
||||
|
@ -37,5 +34,3 @@ RUN apt-get update \
|
|||
&& apt-get clean -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Switch back to dialog for any ad-hoc use of apt-get
|
||||
ENV DEBIAN_FRONTEND=dialog
|
||||
|
|
|
@ -21,9 +21,7 @@ ARG ENABLE_NONROOT_DOCKER="true"
|
|||
ARG SOURCE_SOCKET=/var/run/docker-host.sock
|
||||
ARG TARGET_SOCKET=/var/run/docker.sock
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
# Verify common dependencies and utilities are installed
|
||||
&& apt-get -y install --no-install-recommends apt-utils dialog git openssh-client curl less iproute2 procps 2>&1 \
|
||||
|
@ -48,7 +46,7 @@ RUN apt-get update \
|
|||
#
|
||||
# Use Docker script from script library to set things up
|
||||
&& curl -sSL $DOCKER_SCRIPT_SOURCE -o /tmp/docker-setup.sh \
|
||||
&& if [ "$DOCKER_SCRIPT_SHA" != "dev-mode" ]; then echo "$DOCKER_SCRIPT_SHA /tmp/docker-setup.sh" | sha256sum -c - ; fi \
|
||||
&& ([ "${DOCKER_SCRIPT_SHA}" = "dev-mode" ] || (echo "${DOCKER_SCRIPT_SHA} /tmp/docker-setup.sh" | sha256sum -c -)) \
|
||||
&& /bin/bash /tmp/docker-setup.sh "${ENABLE_NONROOT_DOCKER}" "${SOURCE_SOCKET}" "${TARGET_SOCKET}" "${USERNAME}" \
|
||||
&& rm /tmp/docker-setup.sh \
|
||||
#
|
||||
|
@ -57,9 +55,6 @@ RUN apt-get update \
|
|||
&& apt-get clean -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Switch back to dialog for any ad-hoc use of apt-get
|
||||
ENV DEBIAN_FRONTEND=dialog
|
||||
|
||||
# Setting the ENTRYPOINT to docker-init.sh will configure non-root access to
|
||||
# the Docker socket if "overrideCommand": false is set in devcontainer.json.
|
||||
# The script will also execute CMD if you need to alter startup behaviors.
|
||||
|
|
|
@ -22,9 +22,7 @@ ARG ENABLE_NONROOT_DOCKER="true"
|
|||
ARG SOURCE_SOCKET=/var/run/docker-host.sock
|
||||
ARG TARGET_SOCKET=/var/run/docker.sock
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
# Verify common dependencies and utilities are installed
|
||||
&& apt-get -y install --no-install-recommends apt-utils dialog git openssh-client curl less iproute2 procps 2>&1 \
|
||||
|
@ -49,7 +47,7 @@ RUN apt-get update \
|
|||
#
|
||||
# Use Docker script from script library to set things up
|
||||
&& curl -sSL $DOCKER_SCRIPT_SOURCE -o /tmp/docker-setup.sh \
|
||||
&& if [ "$DOCKER_SCRIPT_SHA" != "dev-mode" ]; then echo "$DOCKER_SCRIPT_SHA /tmp/docker-setup.sh" | sha256sum -c - ; fi \
|
||||
&& ([ "${DOCKER_SCRIPT_SHA}" = "dev-mode" ] || (echo "${DOCKER_SCRIPT_SHA} /tmp/docker-setup.sh" | sha256sum -c -)) \
|
||||
&& /bin/bash /tmp/docker-setup.sh "${ENABLE_NONROOT_DOCKER}" "${SOURCE_SOCKET}" "${TARGET_SOCKET}" "${USERNAME}" \
|
||||
&& rm /tmp/docker-setup.sh \
|
||||
#
|
||||
|
@ -58,9 +56,6 @@ RUN apt-get update \
|
|||
&& apt-get clean -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Switch back to dialog for any ad-hoc use of apt-get
|
||||
ENV DEBIAN_FRONTEND=dialog
|
||||
|
||||
# Setting the ENTRYPOINT to docker-init.sh will configure non-root access to
|
||||
# the Docker socket if "overrideCommand": false is set in devcontainer.json.
|
||||
# The script will also execute CMD if you need to alter startup behaviors.
|
||||
|
|
|
@ -5,9 +5,6 @@
|
|||
|
||||
FROM mcr.microsoft.com/dotnet/core/sdk:2.1
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# This Dockerfile adds a non-root user with sudo access. Use the "remoteUser"
|
||||
# property in devcontainer.json to use it. On Linux, the container user's GID/UIDs
|
||||
# will be updated to match your local UID/GID (when using the dockerFile property).
|
||||
|
@ -17,6 +14,7 @@ ARG USER_UID=1000
|
|||
ARG USER_GID=$USER_UID
|
||||
|
||||
# Configure apt and install packages
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install --no-install-recommends apt-utils dialog 2>&1 \
|
||||
#
|
||||
|
@ -39,5 +37,3 @@ RUN apt-get update \
|
|||
&& apt-get clean -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Switch back to dialog for any ad-hoc use of apt-get
|
||||
ENV DEBIAN_FRONTEND=dialog
|
||||
|
|
|
@ -20,10 +20,8 @@ ENV NVM_DIR=/home/vscode/.nvm
|
|||
# [Optional] Install the Azure CLI
|
||||
ARG INSTALL_AZURE_CLI="false"
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# Configure apt and install packages
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install --no-install-recommends apt-utils dialog 2>&1 \
|
||||
#
|
||||
|
@ -43,15 +41,13 @@ RUN apt-get update \
|
|||
#
|
||||
# Install nvm and Node
|
||||
mkdir ${NVM_DIR} \
|
||||
&& curl -so- https://raw.githubusercontent.com/creationix/nvm/v0.34.0/install.sh | bash 2>&1 \
|
||||
&& curl -so- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh | bash 2>&1 \
|
||||
&& chown -R vscode:vscode ${NVM_DIR} \
|
||||
&& /bin/bash -c "source $NVM_DIR/nvm.sh \
|
||||
&& nvm install ${NODE_VERSION} \
|
||||
&& nvm alias default ${NODE_VERSION}" 2>&1 \
|
||||
&& INIT_STRING='[ -s "$NVM_DIR/nvm.sh" ] && \\. "$NVM_DIR/nvm.sh" && [ -s "$NVM_DIR/bash_completion" ] && \\. "$NVM_DIR/bash_completion"' \
|
||||
&& echo $INIT_STRING >> /home/vscode/.bashrc \
|
||||
&& echo $INIT_STRING >> /home/vscode/.zshrc \
|
||||
&& echo $INIT_STRING >> /root/.zshrc \
|
||||
&& echo '[ -s "$NVM_DIR/nvm.sh" ] && \\. "$NVM_DIR/nvm.sh" && [ -s "$NVM_DIR/bash_completion" ] && \\. "$NVM_DIR/bash_completion"' \
|
||||
| tee -a /home/vscode/.bashrc /home/vscode/.zshrc >> /root/.zshrc \
|
||||
#
|
||||
# Install yarn
|
||||
&& curl -sS https://dl.yarnpkg.com/$(lsb_release -is | tr '[:upper:]' '[:lower:]')/pubkey.gpg | apt-key add - 2>/dev/null \
|
||||
|
@ -72,6 +68,3 @@ RUN apt-get update \
|
|||
&& apt-get autoremove -y \
|
||||
&& apt-get clean -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Switch back to dialog for any ad-hoc use of apt-get
|
||||
ENV DEBIAN_FRONTEND=dialog
|
||||
|
|
|
@ -5,9 +5,6 @@
|
|||
|
||||
FROM mcr.microsoft.com/dotnet/core/sdk:3.0
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# This Dockerfile adds a non-root user with sudo access. Use the "remoteUser"
|
||||
# property in devcontainer.json to use it. On Linux, the container user's GID/UIDs
|
||||
# will be updated to match your local UID/GID (when using the dockerFile property).
|
||||
|
@ -17,6 +14,7 @@ ARG USER_UID=1000
|
|||
ARG USER_GID=$USER_UID
|
||||
|
||||
# Configure apt and install packages
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install --no-install-recommends apt-utils dialog 2>&1 \
|
||||
#
|
||||
|
@ -35,6 +33,3 @@ RUN apt-get update \
|
|||
&& apt-get autoremove -y \
|
||||
&& apt-get clean -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Switch back to dialog for any ad-hoc use of apt-get
|
||||
ENV DEBIAN_FRONTEND=dialog
|
||||
|
|
|
@ -21,10 +21,8 @@ ENV NVM_DIR=/home/vscode/.nvm
|
|||
# [Optional] Install the Azure CLI
|
||||
ARG INSTALL_AZURE_CLI="false"
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# Configure apt and install packages
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install --no-install-recommends apt-utils dialog 2>&1 \
|
||||
#
|
||||
|
@ -44,15 +42,13 @@ RUN apt-get update \
|
|||
#
|
||||
# Install nvm and Node
|
||||
mkdir ${NVM_DIR} \
|
||||
&& curl -so- https://raw.githubusercontent.com/creationix/nvm/v0.34.0/install.sh | bash 2>&1 \
|
||||
&& curl -so- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh | bash 2>&1 \
|
||||
&& chown -R vscode:vscode ${NVM_DIR} \
|
||||
&& /bin/bash -c "source $NVM_DIR/nvm.sh \
|
||||
&& nvm install ${NODE_VERSION} \
|
||||
&& nvm alias default ${NODE_VERSION}" 2>&1 \
|
||||
&& INIT_STRING='[ -s "$NVM_DIR/nvm.sh" ] && \\. "$NVM_DIR/nvm.sh" && [ -s "$NVM_DIR/bash_completion" ] && \\. "$NVM_DIR/bash_completion"' \
|
||||
&& echo $INIT_STRING >> /home/vscode/.bashrc \
|
||||
&& echo $INIT_STRING >> /home/vscode/.zshrc \
|
||||
&& echo $INIT_STRING >> /root/.zshrc \
|
||||
&& echo '[ -s "$NVM_DIR/nvm.sh" ] && \\. "$NVM_DIR/nvm.sh" && [ -s "$NVM_DIR/bash_completion" ] && \\. "$NVM_DIR/bash_completion"' \
|
||||
| tee -a /home/vscode/.bashrc /home/vscode/.zshrc >> /root/.zshrc \
|
||||
#
|
||||
# Install yarn
|
||||
&& curl -sS https://dl.yarnpkg.com/$(lsb_release -is | tr '[:upper:]' '[:lower:]')/pubkey.gpg | apt-key add - 2>/dev/null \
|
||||
|
|
|
@ -5,9 +5,6 @@
|
|||
|
||||
FROM mcr.microsoft.com/dotnet/core/sdk:3.1
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# This Dockerfile adds a non-root user with sudo access. Use the "remoteUser"
|
||||
# property in devcontainer.json to use it. On Linux, the container user's GID/UIDs
|
||||
# will be updated to match your local UID/GID (when using the dockerFile property).
|
||||
|
@ -17,6 +14,7 @@ ARG USER_UID=1000
|
|||
ARG USER_GID=$USER_UID
|
||||
|
||||
# Configure apt and install packages
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install --no-install-recommends apt-utils dialog 2>&1 \
|
||||
#
|
||||
|
@ -35,6 +33,3 @@ RUN apt-get update \
|
|||
&& apt-get autoremove -y \
|
||||
&& apt-get clean -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Switch back to dialog for any ad-hoc use of apt-get
|
||||
ENV DEBIAN_FRONTEND=dialog
|
||||
|
|
|
@ -21,10 +21,8 @@ ENV NVM_DIR=/home/vscode/.nvm
|
|||
# [Optional] Install the Azure CLI
|
||||
ARG INSTALL_AZURE_CLI="false"
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# Configure apt and install packages
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install --no-install-recommends apt-utils dialog 2>&1 \
|
||||
#
|
||||
|
@ -44,15 +42,13 @@ RUN apt-get update \
|
|||
#
|
||||
# Install nvm and Node
|
||||
mkdir ${NVM_DIR} \
|
||||
&& curl -so- https://raw.githubusercontent.com/creationix/nvm/v0.34.0/install.sh | bash 2>&1 \
|
||||
&& curl -so- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh | bash 2>&1 \
|
||||
&& chown -R vscode:vscode ${NVM_DIR} \
|
||||
&& /bin/bash -c "source $NVM_DIR/nvm.sh \
|
||||
&& nvm install ${NODE_VERSION} \
|
||||
&& nvm alias default ${NODE_VERSION}" 2>&1 \
|
||||
&& INIT_STRING='[ -s "$NVM_DIR/nvm.sh" ] && \\. "$NVM_DIR/nvm.sh" && [ -s "$NVM_DIR/bash_completion" ] && \\. "$NVM_DIR/bash_completion"' \
|
||||
&& echo $INIT_STRING >> /home/vscode/.bashrc \
|
||||
&& echo $INIT_STRING >> /home/vscode/.zshrc \
|
||||
&& echo $INIT_STRING >> /root/.zshrc \
|
||||
&& echo '[ -s "$NVM_DIR/nvm.sh" ] && \\. "$NVM_DIR/nvm.sh" && [ -s "$NVM_DIR/bash_completion" ] && \\. "$NVM_DIR/bash_completion"' \
|
||||
| tee -a /home/vscode/.bashrc /home/vscode/.zshrc >> /root/.zshrc \
|
||||
#
|
||||
# Install yarn
|
||||
&& curl -sS https://dl.yarnpkg.com/$(lsb_release -is | tr '[:upper:]' '[:lower:]')/pubkey.gpg | apt-key add - 2>/dev/null \
|
||||
|
@ -73,6 +69,3 @@ RUN apt-get update \
|
|||
&& apt-get autoremove -y \
|
||||
&& apt-get clean -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Switch back to dialog for any ad-hoc use of apt-get
|
||||
ENV DEBIAN_FRONTEND=dialog
|
||||
|
|
|
@ -5,9 +5,6 @@
|
|||
|
||||
FROM mcr.microsoft.com/vscode/devcontainers/javascript-node:12
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# Configuring Elm version
|
||||
ARG ELM_VERSION=latest-0.19.1
|
||||
ARG ELM_TEST_VERSION=latest-0.19.1
|
||||
|
@ -22,6 +19,7 @@ ARG USER_UID=1000
|
|||
ARG USER_GID=$USER_UID
|
||||
|
||||
# Install elm, elm-test and elm-format
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN sudo -u ${USERNAME} npm install --global \
|
||||
elm@${ELM_VERSION} \
|
||||
elm-test@${ELM_TEST_VERSION} \
|
||||
|
@ -33,6 +31,3 @@ RUN sudo -u ${USERNAME} npm install --global \
|
|||
&& usermod --uid $USER_UID --gid $USER_GID $USERNAME \
|
||||
&& chown -R $USER_UID:$USER_GID /home/$USERNAME; \
|
||||
fi
|
||||
|
||||
# Switch back to dialog for any ad-hoc use of apt-get
|
||||
ENV DEBIAN_FRONTEND=dialog
|
||||
|
|
|
@ -5,9 +5,6 @@
|
|||
|
||||
FROM golang:1
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# This Dockerfile adds a non-root user with sudo access. Use the "remoteUser"
|
||||
# property in devcontainer.json to use it. On Linux, the container user's GID/UIDs
|
||||
# will be updated to match your local UID/GID (when using the dockerFile property).
|
||||
|
@ -17,6 +14,7 @@ ARG USER_UID=1000
|
|||
ARG USER_GID=$USER_UID
|
||||
|
||||
# Configure apt, install packages and tools
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install --no-install-recommends apt-utils dialog 2>&1 \
|
||||
#
|
||||
|
@ -79,5 +77,3 @@ RUN apt-get update \
|
|||
# Update this to "on" or "off" as appropriate
|
||||
ENV GO111MODULE=auto
|
||||
|
||||
# Switch back to dialog for any ad-hoc use of apt-get
|
||||
ENV DEBIAN_FRONTEND=dialog
|
||||
|
|
|
@ -14,7 +14,7 @@ ARG USER_UID=1000
|
|||
ARG USER_GID=$USER_UID
|
||||
|
||||
# Configure apt
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install --no-install-recommends apt-utils dialog 2>&1 \
|
||||
#
|
||||
|
@ -59,7 +59,6 @@ RUN apt-get update \
|
|||
RUN apt-get autoremove -y \
|
||||
&& apt-get clean -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
ENV DEBIAN_FRONTEND=dialog
|
||||
|
||||
# Allow for a consistant java home location for settings - image is changing over time
|
||||
RUN if [ ! -d "/docker-java-home" ]; then ln -s "${JAVA_HOME}" /docker-java-home; fi
|
||||
|
|
|
@ -14,7 +14,7 @@ ARG USER_UID=1000
|
|||
ARG USER_GID=$USER_UID
|
||||
|
||||
# Configure apt
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install --no-install-recommends apt-utils dialog 2>&1 \
|
||||
#
|
||||
|
@ -56,4 +56,4 @@ ENV MAVEN_CONFIG /root/.m2
|
|||
RUN apt-get autoremove -y \
|
||||
&& apt-get clean -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
ENV DEBIAN_FRONTEND=dialog
|
||||
|
||||
|
|
|
@ -14,7 +14,7 @@ ARG USER_UID=1000
|
|||
ARG USER_GID=$USER_UID
|
||||
|
||||
# Configure apt
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install --no-install-recommends apt-utils dialog 2>&1 \
|
||||
#
|
||||
|
@ -59,7 +59,6 @@ RUN apt-get update \
|
|||
RUN apt-get autoremove -y \
|
||||
&& apt-get clean -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
ENV DEBIAN_FRONTEND=dialog
|
||||
|
||||
# Allow for a consistant java home location for settings - image is changing over time
|
||||
RUN if [ ! -d "/docker-java-home" ]; then ln -s "${JAVA_HOME}" /docker-java-home; fi
|
||||
|
|
|
@ -13,26 +13,23 @@ ARG USERNAME=node
|
|||
ARG USER_UID=1000
|
||||
ARG USER_GID=$USER_UID
|
||||
|
||||
# Set to false to skip installing zsh and Oh My ZSH!
|
||||
ARG INSTALL_ZSH="true"
|
||||
ENV PATH=${PATH}:/usr/local/share/npm-global/bin
|
||||
|
||||
# Location and expected SHA for common setup script - SHA generated on release
|
||||
# Options for common package install script
|
||||
ARG INSTALL_ZSH="true"
|
||||
ARG UPGRADE_PACKAGES="true"
|
||||
ARG COMMON_SCRIPT_SOURCE="https://raw.githubusercontent.com/microsoft/vscode-dev-containers/master/script-library/common-debian.sh"
|
||||
ARG COMMON_SCRIPT_SHA="dev-mode"
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
ENV PATH=${PATH}:/usr/local/share/npm-global/bin
|
||||
|
||||
# Configure apt and install packages
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install --no-install-recommends apt-utils dialog wget ca-certificates 2>&1 \
|
||||
#
|
||||
# Verify git, common tools / libs installed, add/modify non-root user, optionally install zsh
|
||||
&& wget -q -O /tmp/common-setup.sh $COMMON_SCRIPT_SOURCE \
|
||||
&& if [ "$COMMON_SCRIPT_SHA" != "dev-mode" ]; then echo "$COMMON_SCRIPT_SHA /tmp/common-setup.sh" | sha256sum -c - ; fi \
|
||||
&& /bin/bash /tmp/common-setup.sh "$INSTALL_ZSH" "$USERNAME" "$USER_UID" "$USER_GID" \
|
||||
&& apt-get -y install --no-install-recommends curl ca-certificates 2>&1 \
|
||||
&& curl -sSL ${COMMON_SCRIPT_SOURCE} -o /tmp/common-setup.sh \
|
||||
&& ([ "${COMMON_SCRIPT_SHA}" = "dev-mode" ] || (echo "${COMMON_SCRIPT_SHA} /tmp/common-setup.sh" | sha256sum -c -)) \
|
||||
&& /bin/bash /tmp/common-setup.sh "${INSTALL_ZSH}" "${USERNAME}" "${USER_UID}" "${USER_GID}" "${UPGRADE_PACKAGES}" \
|
||||
&& rm /tmp/common-setup.sh \
|
||||
#
|
||||
# Remove outdated yarn from /opt and install via package
|
||||
|
@ -64,5 +61,4 @@ RUN apt-get update \
|
|||
&& apt-get clean -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Switch back to dialog for any ad-hoc use of apt-get
|
||||
ENV DEBIAN_FRONTEND=dialog
|
||||
|
||||
|
|
|
@ -20,20 +20,9 @@ RUN if [ "$USER_GID" != "1000" ] || [ "$USER_UID" != "1000" ]; then \
|
|||
&& chmod -R $USER_UID:$USER_GID /home/$USERNAME; \
|
||||
fi
|
||||
|
||||
# *************************************************************
|
||||
# * Uncomment this section to use RUN instructions to install *
|
||||
# * any needed dependencies after executing "apt-get update". *
|
||||
# * See https://docs.docker.com/engine/reference/builder/#run *
|
||||
# *************************************************************
|
||||
# ENV DEBIAN_FRONTEND=noninteractive
|
||||
# ** [Optional] Uncomment this section to install additional packages. **
|
||||
#
|
||||
# ARG DEBIAN_FRONTEND=noninteractive
|
||||
# RUN apt-get update \
|
||||
# && apt-get -y install --no-install-recommends <your-package-list-here> \
|
||||
# #
|
||||
# # Clean up
|
||||
# && apt-get autoremove -y \
|
||||
# && apt-get clean -y \
|
||||
# && rm -rf /var/lib/apt/lists/*
|
||||
# ENV DEBIAN_FRONTEND=dialog
|
||||
# && apt-get -y install --no-install-recommends <your-package-list-here>
|
||||
|
||||
# Uncomment to default to non-root user
|
||||
# USER $USER_UID
|
||||
|
|
|
@ -20,20 +20,8 @@ RUN if [ "$USER_GID" != "1000" ] || [ "$USER_UID" != "1000" ]; then \
|
|||
&& chmod -R $USER_UID:$USER_GID /home/$USERNAME; \
|
||||
fi
|
||||
|
||||
# *************************************************************
|
||||
# * Uncomment this section to use RUN instructions to install *
|
||||
# * any needed dependencies after executing "apt-get update". *
|
||||
# * See https://docs.docker.com/engine/reference/builder/#run *
|
||||
# *************************************************************
|
||||
# ENV DEBIAN_FRONTEND=noninteractive
|
||||
# ** [Optional] Uncomment this section to install additional packages. **
|
||||
#
|
||||
# ARG DEBIAN_FRONTEND=noninteractive
|
||||
# RUN apt-get update \
|
||||
# && apt-get -y install --no-install-recommends <your-package-list-here> \
|
||||
# #
|
||||
# # Clean up
|
||||
# && apt-get autoremove -y \
|
||||
# && apt-get clean -y \
|
||||
# && rm -rf /var/lib/apt/lists/*
|
||||
# ENV DEBIAN_FRONTEND=dialog
|
||||
|
||||
# Uncomment to default to non-root user
|
||||
# USER $USER_UID
|
||||
# && apt-get -y install --no-install-recommends <your-package-list-here>
|
||||
|
|
|
@ -13,26 +13,23 @@ ARG USERNAME=node
|
|||
ARG USER_UID=1000
|
||||
ARG USER_GID=$USER_UID
|
||||
|
||||
# Set to false to skip installing zsh and Oh My ZSH!
|
||||
ARG INSTALL_ZSH="true"
|
||||
ENV PATH=${PATH}:/usr/local/share/npm-global/bin
|
||||
|
||||
# Location and expected SHA for common setup script - SHA generated on release
|
||||
# Options for common package install script
|
||||
ARG INSTALL_ZSH="true"
|
||||
ARG UPGRADE_PACKAGES="true"
|
||||
ARG COMMON_SCRIPT_SOURCE="https://raw.githubusercontent.com/microsoft/vscode-dev-containers/master/script-library/common-debian.sh"
|
||||
ARG COMMON_SCRIPT_SHA="dev-mode"
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
ENV PATH=${PATH}:/usr/local/share/npm-global/bin
|
||||
|
||||
# Configure apt and install packages
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install --no-install-recommends apt-utils dialog wget ca-certificates 2>&1 \
|
||||
#
|
||||
# Verify git, common tools / libs installed, add/modify non-root user, optionally install zsh
|
||||
&& wget -q -O /tmp/common-setup.sh $COMMON_SCRIPT_SOURCE \
|
||||
&& if [ "$COMMON_SCRIPT_SHA" != "dev-mode" ]; then echo "$COMMON_SCRIPT_SHA /tmp/common-setup.sh" | sha256sum -c - ; fi \
|
||||
&& /bin/bash /tmp/common-setup.sh "$INSTALL_ZSH" "$USERNAME" "$USER_UID" "$USER_GID" \
|
||||
&& apt-get -y install --no-install-recommends curl ca-certificates 2>&1 \
|
||||
&& curl -sSL ${COMMON_SCRIPT_SOURCE} -o /tmp/common-setup.sh \
|
||||
&& ([ "${COMMON_SCRIPT_SHA}" = "dev-mode" ] || (echo "${COMMON_SCRIPT_SHA} /tmp/common-setup.sh" | sha256sum -c -)) \
|
||||
&& /bin/bash /tmp/common-setup.sh "${INSTALL_ZSH}" "${USERNAME}" "${USER_UID}" "${USER_GID}" "${UPGRADE_PACKAGES}" \
|
||||
&& rm /tmp/common-setup.sh \
|
||||
#
|
||||
# Remove outdated yarn from /opt and install via package
|
||||
|
@ -64,5 +61,3 @@ RUN apt-get update \
|
|||
&& apt-get clean -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Switch back to dialog for any ad-hoc use of apt-get
|
||||
ENV DEBIAN_FRONTEND=dialog
|
||||
|
|
|
@ -13,26 +13,23 @@ ARG USERNAME=node
|
|||
ARG USER_UID=1000
|
||||
ARG USER_GID=$USER_UID
|
||||
|
||||
# Set to false to skip installing zsh and Oh My ZSH!
|
||||
ARG INSTALL_ZSH="true"
|
||||
ENV PATH=${PATH}:/usr/local/share/npm-global/bin
|
||||
|
||||
# Location and expected SHA for common setup script - SHA generated on release
|
||||
# Options for common package install script
|
||||
ARG INSTALL_ZSH="true"
|
||||
ARG UPGRADE_PACKAGES="true"
|
||||
ARG COMMON_SCRIPT_SOURCE="https://raw.githubusercontent.com/microsoft/vscode-dev-containers/master/script-library/common-debian.sh"
|
||||
ARG COMMON_SCRIPT_SHA="dev-mode"
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
ENV PATH=${PATH}:/usr/local/share/npm-global/bin
|
||||
|
||||
# Configure apt and install packages
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install --no-install-recommends apt-utils dialog wget ca-certificates 2>&1 \
|
||||
#
|
||||
# Verify git, common tools / libs installed, add/modify non-root user, optionally install zsh
|
||||
&& wget -q -O /tmp/common-setup.sh $COMMON_SCRIPT_SOURCE \
|
||||
&& if [ "$COMMON_SCRIPT_SHA" != "dev-mode" ]; then echo "$COMMON_SCRIPT_SHA /tmp/common-setup.sh" | sha256sum -c - ; fi \
|
||||
&& /bin/bash /tmp/common-setup.sh "$INSTALL_ZSH" "$USERNAME" "$USER_UID" "$USER_GID" \
|
||||
&& apt-get -y install --no-install-recommends curl ca-certificates 2>&1 \
|
||||
&& curl -sSL ${COMMON_SCRIPT_SOURCE} -o /tmp/common-setup.sh \
|
||||
&& ([ "${COMMON_SCRIPT_SHA}" = "dev-mode" ] || (echo "${COMMON_SCRIPT_SHA} /tmp/common-setup.sh" | sha256sum -c -)) \
|
||||
&& /bin/bash /tmp/common-setup.sh "${INSTALL_ZSH}" "${USERNAME}" "${USER_UID}" "${USER_GID}" "${UPGRADE_PACKAGES}" \
|
||||
&& rm /tmp/common-setup.sh \
|
||||
#
|
||||
# Remove outdated yarn from /opt and install via package
|
||||
|
@ -63,6 +60,3 @@ RUN apt-get update \
|
|||
&& apt-get autoremove -y \
|
||||
&& apt-get clean -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Switch back to dialog for any ad-hoc use of apt-get
|
||||
ENV DEBIAN_FRONTEND=dialog
|
||||
|
|
|
@ -1,7 +1,4 @@
|
|||
FROM debian:latest
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
FROM mcr.microsoft.com/vscode/devcontainers/base:debian-10
|
||||
|
||||
# This Dockerfile adds a non-root 'vscode' user with sudo access. However, for Linux,
|
||||
# this user's GID/UID must match your local user UID/GID to avoid permission issues
|
||||
|
@ -12,6 +9,7 @@ ARG USER_UID=1000
|
|||
ARG USER_GID=$USER_UID
|
||||
|
||||
# Configure apt and install packages
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install --no-install-recommends apt-utils dialog 2>&1 \
|
||||
#
|
||||
|
@ -45,6 +43,3 @@ RUN apt-get update \
|
|||
&& apt-get autoremove -y \
|
||||
&& apt-get clean -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Switch back to dialog for any ad-hoc use of apt-get
|
||||
ENV DEBIAN_FRONTEND=dialog
|
|
@ -46,7 +46,7 @@ RUN apt-get update \
|
|||
#
|
||||
# Use Docker script from script library to set things up
|
||||
&& curl -sSL $DOCKER_SCRIPT_SOURCE -o /tmp/docker-setup.sh \
|
||||
&& if [ "$DOCKER_SCRIPT_SHA" != "dev-mode" ]; then echo "$DOCKER_SCRIPT_SHA /tmp/docker-setup.sh" | sha256sum -c - ; fi \
|
||||
&& ([ "${DOCKER_SCRIPT_SHA}" = "dev-mode" ] || (echo "${DOCKER_SCRIPT_SHA} /tmp/docker-setup.sh" | sha256sum -c -)) \
|
||||
&& /bin/bash /tmp/docker-setup.sh "${ENABLE_NONROOT_DOCKER}" "${SOURCE_SOCKET}" "${TARGET_SOCKET}" "${USERNAME}" \
|
||||
&& rm /tmp/docker-setup.sh \
|
||||
#
|
||||
|
|
|
@ -22,21 +22,9 @@ RUN if [ "$USER_GID" != "1000" ] || [ "$USER_UID" != "1000" ]; then \
|
|||
&& chown -R $USER_UID:$USER_GID /home/$USERNAME; \
|
||||
fi
|
||||
|
||||
# *************************************************************
|
||||
# * Uncomment this section to use RUN instructions to install *
|
||||
# * any needed dependencies after executing "apt-get update". *
|
||||
# * See https://docs.docker.com/engine/reference/builder/#run *
|
||||
# *************************************************************
|
||||
# ENV DEBIAN_FRONTEND=noninteractive
|
||||
# ** [Optional] Uncomment this section to install additional packages. **
|
||||
#
|
||||
# ARG DEBIAN_FRONTEND=noninteractive
|
||||
# RUN apt-get update \
|
||||
# && apt-get -y install --no-install-recommends <your-package-list-here> \
|
||||
# #
|
||||
# # Clean up
|
||||
# && apt-get autoremove -y \
|
||||
# && apt-get clean -y \
|
||||
# && rm -rf /var/lib/apt/lists/*
|
||||
# ENV DEBIAN_FRONTEND=dialog
|
||||
|
||||
# Uncomment to default to non-root user
|
||||
# USER $USER_UID
|
||||
# && apt-get -y install --no-install-recommends <your-package-list-here>
|
||||
|
||||
|
|
|
@ -5,9 +5,6 @@
|
|||
|
||||
FROM perl:5
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# This Dockerfile adds a non-root user with sudo access. Use the "remoteUser"
|
||||
# property in devcontainer.json to use it. On Linux, the container user's GID/UIDs
|
||||
# will be updated to match your local UID/GID (when using the dockerFile property).
|
||||
|
@ -17,6 +14,7 @@ ARG USER_UID=1000
|
|||
ARG USER_GID=$USER_UID
|
||||
|
||||
# Configure apt and install packages
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install --no-install-recommends apt-utils dialog 2>&1 \
|
||||
#
|
||||
|
@ -35,6 +33,3 @@ RUN apt-get update \
|
|||
&& apt-get autoremove -y \
|
||||
&& apt-get clean -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Switch back to dialog for any ad-hoc use of apt-get
|
||||
ENV DEBIAN_FRONTEND=dialog
|
|
@ -5,9 +5,6 @@
|
|||
|
||||
FROM php:7-cli
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# This Dockerfile adds a non-root user with sudo access. Use the "remoteUser"
|
||||
# property in devcontainer.json to use it. On Linux, the container user's GID/UIDs
|
||||
# will be updated to match your local UID/GID (when using the dockerFile property).
|
||||
|
@ -17,6 +14,7 @@ ARG USER_UID=1000
|
|||
ARG USER_GID=$USER_UID
|
||||
|
||||
# Configure apt and install packages
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install --no-install-recommends apt-utils dialog 2>&1 \
|
||||
#
|
||||
|
@ -47,6 +45,3 @@ RUN apt-get update \
|
|||
&& apt-get autoremove -y \
|
||||
&& apt-get clean -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Switch back to dialog for any ad-hoc use of apt-get
|
||||
ENV DEBIAN_FRONTEND=dialog
|
|
@ -5,9 +5,6 @@
|
|||
|
||||
FROM php:7-cli
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# This Dockerfile adds a non-root user with sudo access. Use the "remoteUser"
|
||||
# property in devcontainer.json to use it. On Linux, the container user's GID/UIDs
|
||||
# will be updated to match your local UID/GID (when using the dockerFile property).
|
||||
|
@ -17,6 +14,7 @@ ARG USER_UID=1000
|
|||
ARG USER_GID=$USER_UID
|
||||
|
||||
# Configure apt and install packages
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install --no-install-recommends apt-utils dialog 2>&1 \
|
||||
#
|
||||
|
@ -42,7 +40,4 @@ RUN apt-get update \
|
|||
&& apt-get clean -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Switch back to dialog for any ad-hoc use of apt-get
|
||||
ENV DEBIAN_FRONTEND=dialog
|
||||
|
||||
|
||||
|
|
|
@ -17,6 +17,7 @@ ARG USER_UID=1000
|
|||
ARG USER_GID=$USER_UID
|
||||
|
||||
# Configure apt and install packages
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install --no-install-recommends apt-utils dialog 2>&1 \
|
||||
#
|
||||
|
@ -39,7 +40,4 @@ RUN apt-get update \
|
|||
&& apt-get clean -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Switch back to dialog for any ad-hoc use of apt-get
|
||||
ENV DEBIAN_FRONTEND=dialog
|
||||
|
||||
|
||||
|
|
|
@ -14,6 +14,7 @@ ARG USER_UID=1000
|
|||
ARG USER_GID=$USER_UID
|
||||
|
||||
# install git iproute2, process tools
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update && apt-get -y install git openssh-client less iproute2 procps \
|
||||
#
|
||||
# Create a non-root user to use if preferred - see https://aka.ms/vscode-remote/containers/non-root-user.
|
||||
|
|
|
@ -5,9 +5,6 @@
|
|||
|
||||
FROM continuumio/anaconda3
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# This Dockerfile adds a non-root user with sudo access. Use the "remoteUser"
|
||||
# property in devcontainer.json to use it. On Linux, the container user's GID/UIDs
|
||||
# will be updated to match your local UID/GID (when using the dockerFile property).
|
||||
|
@ -21,6 +18,7 @@ ARG USER_GID=$USER_UID
|
|||
COPY environment.yml* .devcontainer/noop.txt /tmp/conda-tmp/
|
||||
|
||||
# Configure apt and install packages
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install --no-install-recommends apt-utils dialog 2>&1 \
|
||||
#
|
||||
|
@ -47,7 +45,4 @@ RUN apt-get update \
|
|||
&& apt-get clean -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Switch back to dialog for any ad-hoc use of apt-get
|
||||
ENV DEBIAN_FRONTEND=dialog
|
||||
|
||||
|
||||
|
|
|
@ -5,9 +5,6 @@
|
|||
|
||||
FROM continuumio/miniconda3
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# This Dockerfile adds a non-root user with sudo access. Use the "remoteUser"
|
||||
# property in devcontainer.json to use it. On Linux, the container user's GID/UIDs
|
||||
# will be updated to match your local UID/GID (when using the dockerFile property).
|
||||
|
@ -21,6 +18,7 @@ ARG USER_GID=$USER_UID
|
|||
COPY environment.yml* .devcontainer/noop.txt /tmp/conda-tmp/
|
||||
|
||||
# Configure apt and install packages
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install --no-install-recommends apt-utils dialog 2>&1 \
|
||||
#
|
||||
|
@ -46,6 +44,3 @@ RUN apt-get update \
|
|||
&& apt-get autoremove -y \
|
||||
&& apt-get clean -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Switch back to dialog for any ad-hoc use of apt-get
|
||||
ENV DEBIAN_FRONTEND=dialog
|
||||
|
|
|
@ -31,15 +31,11 @@ RUN if [ "$USER_GID" != "1000" ] || [ "$USER_UID" != "1000" ]; then \
|
|||
# RUN pip3 --disable-pip-version-check --no-cache-dir install -r /tmp/pip-tmp/requirements.txt \
|
||||
# && rm -rf /tmp/pip-tmp
|
||||
|
||||
# [Optional] Uncomment this section to install additional packages.
|
||||
# ** [Optional] Uncomment this section to install additional packages. **
|
||||
#
|
||||
# ENV DEBIAN_FRONTEND=noninteractive
|
||||
# ARG DEBIAN_FRONTEND=noninteractive
|
||||
# RUN apt-get update \
|
||||
# && apt-get -y install --no-install-recommends <your-package-list-here> \
|
||||
# #
|
||||
# # Clean up
|
||||
# && apt-get autoremove -y \
|
||||
# && apt-get clean -y \
|
||||
# && rm -rf /var/lib/apt/lists/*
|
||||
# ENV DEBIAN_FRONTEND=dialog
|
||||
# && apt-get -y install --no-install-recommends <your-package-list-here>
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -15,13 +15,7 @@ FROM mcr.microsoft.com/vscode/devcontainers/python:${VARIANT}
|
|||
|
||||
# [Optional] Uncomment this section to install additional packages.
|
||||
#
|
||||
# ENV DEBIAN_FRONTEND=noninteractive
|
||||
# ARG DEBIAN_FRONTEND=noninteractive
|
||||
# RUN apt-get update \
|
||||
# && apt-get -y install --no-install-recommends <your-package-list-here> \
|
||||
# #
|
||||
# # Clean up
|
||||
# && apt-get autoremove -y \
|
||||
# && apt-get clean -y \
|
||||
# && rm -rf /var/lib/apt/lists/*
|
||||
# ENV DEBIAN_FRONTEND=dialog
|
||||
# && apt-get -y install --no-install-recommends <your-package-list-here>
|
||||
|
||||
|
|
|
@ -29,16 +29,6 @@ ARG USER_GID=$USER_UID
|
|||
# include your requirements in the image itself. Only do this if your requirements rarely change.
|
||||
# COPY requirements.txt /tmp/pip-tmp/
|
||||
|
||||
# Set to false to skip installing zsh and Oh My ZSH!
|
||||
ARG INSTALL_ZSH="true"
|
||||
|
||||
# Location and expected SHA for common setup script - SHA generated on release
|
||||
ARG COMMON_SCRIPT_SOURCE="https://raw.githubusercontent.com/microsoft/vscode-dev-containers/master/script-library/common-debian.sh"
|
||||
ARG COMMON_SCRIPT_SHA="dev-mode"
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# Default set of utilities to install in a side virtual env
|
||||
ARG DEFAULT_UTILS="\
|
||||
pylint \
|
||||
|
@ -56,14 +46,21 @@ ENV PIPX_HOME=/usr/local/py-utils
|
|||
ENV PIPX_BIN_DIR=${PIPX_HOME}/bin
|
||||
ENV PATH=${PATH}:${PIPX_BIN_DIR}
|
||||
|
||||
# Options for common package install script
|
||||
ARG INSTALL_ZSH="true"
|
||||
ARG UPGRADE_PACKAGES="true"
|
||||
ARG COMMON_SCRIPT_SOURCE="https://raw.githubusercontent.com/microsoft/vscode-dev-containers/master/script-library/common-debian.sh"
|
||||
ARG COMMON_SCRIPT_SHA="dev-mode"
|
||||
|
||||
# Configure apt and install packages
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install --no-install-recommends apt-utils dialog wget ca-certificates 2>&1 \
|
||||
#
|
||||
# Verify git, common tools / libs installed, add/modify non-root user, optionally install zsh
|
||||
&& wget -q -O /tmp/common-setup.sh $COMMON_SCRIPT_SOURCE \
|
||||
&& if [ "$COMMON_SCRIPT_SHA" != "dev-mode" ]; then echo "$COMMON_SCRIPT_SHA /tmp/common-setup.sh" | sha256sum -c - ; fi \
|
||||
&& /bin/bash /tmp/common-setup.sh "$INSTALL_ZSH" "$USERNAME" "$USER_UID" "$USER_GID" \
|
||||
&& apt-get -y install --no-install-recommends curl ca-certificates 2>&1 \
|
||||
&& curl -sSL ${COMMON_SCRIPT_SOURCE} -o /tmp/common-setup.sh \
|
||||
&& ([ "${COMMON_SCRIPT_SHA}" = "dev-mode" ] || (echo "${COMMON_SCRIPT_SHA} /tmp/common-setup.sh" | sha256sum -c -)) \
|
||||
&& /bin/bash /tmp/common-setup.sh "${INSTALL_ZSH}" "${USERNAME}" "${USER_UID}" "${USER_GID}" "${UPGRADE_PACKAGES}" \
|
||||
&& rm /tmp/common-setup.sh \
|
||||
#
|
||||
# Setup default python tools in a venv via pipx to avoid conflicts
|
||||
|
@ -84,7 +81,5 @@ RUN apt-get update \
|
|||
&& apt-get clean -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Switch back to dialog for any ad-hoc use of apt-get
|
||||
ENV DEBIAN_FRONTEND=dialog
|
||||
|
||||
|
||||
|
|
|
@ -5,9 +5,6 @@
|
|||
|
||||
FROM rocker/r-apt:bionic
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# The r-apt image comes with a base non-root 'docker' user which this Dockerfile
|
||||
# gives sudo access. However, for Linux, this user's GID/UID must match your local
|
||||
# user UID/GID to avoid permission issues with bind mounts. Update USER_UID / USER_GID
|
||||
|
@ -16,6 +13,7 @@ ARG USER_UID=1000
|
|||
ARG USER_GID=$USER_UID
|
||||
|
||||
# Configure apt and install packages
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install --no-install-recommends apt-utils dialog 2>&1 \
|
||||
#
|
||||
|
@ -44,6 +42,3 @@ RUN apt-get update \
|
|||
&& apt-get autoremove -y \
|
||||
&& apt-get clean -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Switch back to dialog for any ad-hoc use of apt-get
|
||||
ENV DEBIAN_FRONTEND=dialog
|
|
@ -23,7 +23,7 @@ RUN if [ "$USER_GID" != "1000" ] || [ "$USER_UID" != "1000" ]; then \
|
|||
#
|
||||
&& sudo -u ${USERNAME} npm install -g bs-platform esy@latest
|
||||
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install --no-install-recommends software-properties-common ocaml \
|
||||
&& apt-add-repository ppa:fish-shell/release-3 \
|
||||
|
@ -33,7 +33,3 @@ RUN apt-get update \
|
|||
&& apt-get autoremove -y \
|
||||
&& apt-get clean -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
ENV DEBIAN_FRONTEND=dialog
|
||||
|
||||
# Uncomment to default to non-root user
|
||||
# USER $USER_UID
|
||||
|
|
|
@ -1,7 +1,4 @@
|
|||
FROM debian:latest
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
FROM mcr.microsoft.com/vscode/devcontainers/base:debian-10
|
||||
|
||||
# This Dockerfile adds a non-root user with sudo access. Use the "remoteUser"
|
||||
# property in devcontainer.json to use it. On Linux, the container user's GID/UIDs
|
||||
|
@ -12,6 +9,7 @@ ARG USER_UID=1000
|
|||
ARG USER_GID=$USER_UID
|
||||
|
||||
# Configure apt and install packages
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install --no-install-recommends apt-utils dialog 2>&1 \
|
||||
#
|
||||
|
@ -67,6 +65,3 @@ RUN apt-get update \
|
|||
&& apt-get autoremove -y \
|
||||
&& apt-get clean -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Switch back to dialog for any ad-hoc use of apt-get
|
||||
ENV DEBIAN_FRONTEND=dialog
|
|
@ -1,7 +1,4 @@
|
|||
FROM debian:latest
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
FROM mcr.microsoft.com/vscode/devcontainers/base:debian-10
|
||||
|
||||
# This Dockerfile adds a non-root user with sudo access. Use the "remoteUser"
|
||||
# property in devcontainer.json to use it. On Linux, the container user's GID/UIDs
|
||||
|
@ -12,6 +9,7 @@ ARG USER_UID=1000
|
|||
ARG USER_GID=$USER_UID
|
||||
|
||||
# Configure apt and install packages
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install --no-install-recommends apt-utils dialog 2>&1 \
|
||||
#
|
||||
|
@ -58,6 +56,3 @@ RUN apt-get update \
|
|||
&& apt-get autoremove -y \
|
||||
&& apt-get clean -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Switch back to dialog for any ad-hoc use of apt-get
|
||||
ENV DEBIAN_FRONTEND=dialog
|
|
@ -5,9 +5,6 @@
|
|||
|
||||
FROM ruby:2
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# This Dockerfile adds a non-root user with sudo access. Use the "remoteUser"
|
||||
# property in devcontainer.json to use it. On Linux, the container user's GID/UIDs
|
||||
# will be updated to match your local UID/GID (when using the dockerFile property).
|
||||
|
@ -17,6 +14,7 @@ ARG USER_UID=1000
|
|||
ARG USER_GID=$USER_UID
|
||||
|
||||
# Configure apt and install packages
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install --no-install-recommends apt-utils dialog 2>&1 \
|
||||
# Verify git, process tools installed
|
||||
|
@ -39,5 +37,3 @@ RUN apt-get update \
|
|||
&& apt-get clean -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Switch back to dialog for any ad-hoc use of apt-get
|
||||
ENV DEBIAN_FRONTEND=dialog
|
||||
|
|
|
@ -13,10 +13,8 @@ ARG USERNAME=vscode
|
|||
ARG USER_UID=1000
|
||||
ARG USER_GID=$USER_UID
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# Configure apt and install packages
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install --no-install-recommends apt-utils dialog 2>&1 \
|
||||
#
|
||||
|
@ -42,6 +40,3 @@ RUN apt-get update \
|
|||
&& apt-get autoremove -y \
|
||||
&& apt-get clean -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Switch back to dialog for any ad-hoc use of apt-get
|
||||
ENV DEBIAN_FRONTEND=dialog
|
||||
|
|
|
@ -13,10 +13,8 @@ ARG USERNAME=vscode
|
|||
ARG USER_UID=1000
|
||||
ARG USER_GID=$USER_UID
|
||||
|
||||
# Avoid warnings by switching to noninteractive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# Configure apt and install packages
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install --no-install-recommends apt-utils dialog 2>&1 \
|
||||
#
|
||||
|
@ -42,6 +40,3 @@ RUN apt-get update \
|
|||
&& apt-get clean -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Switch back to dialog for any ad-hoc use of apt-get
|
||||
ENV DEBIAN_FRONTEND=dialog
|
||||
|
||||
|
|
|
@ -25,21 +25,10 @@ RUN if [ "$USER_GID" != "1000" ] || [ "$USER_UID" != "1000" ]; then \
|
|||
# Install tslint, typescript. eslint is installed by javascript image
|
||||
&& sudo -u ${USERNAME} npm install -g tslint typescript
|
||||
|
||||
# *********************************************************************
|
||||
# * Uncomment this section to use RUN to install other dependencies. *
|
||||
# * See https://aka.ms/vscode-remote/containers/dockerfile-run *
|
||||
# *********************************************************************
|
||||
# ENV DEBIAN_FRONTEND=noninteractive
|
||||
# ** [Optional] Uncomment this section to install additional packages. **
|
||||
#
|
||||
# ARG DEBIAN_FRONTEND=noninteractive
|
||||
# RUN apt-get update \
|
||||
# && apt-get -y install --no-install-recommends <your-package-list-here> \
|
||||
# #
|
||||
# # Clean up
|
||||
# && apt-get autoremove -y \
|
||||
# && apt-get clean -y \
|
||||
# && rm -rf /var/lib/apt/lists/*
|
||||
# ENV DEBIAN_FRONTEND=dialog
|
||||
|
||||
# Uncomment to default to non-root user
|
||||
# USER $USER_UID
|
||||
# && apt-get -y install --no-install-recommends <your-package-list-here>
|
||||
|
||||
|
||||
|
|
|
@ -25,20 +25,10 @@ RUN if [ "$USER_GID" != "1000" ] || [ "$USER_UID" != "1000" ]; then \
|
|||
# Install tslint, typescript. eslint is installed by javascript image
|
||||
&& sudo -u ${USERNAME} npm install -g tslint typescript
|
||||
|
||||
# *********************************************************************
|
||||
# * Uncomment this section to use RUN to install other dependencies. *
|
||||
# * See https://aka.ms/vscode-remote/containers/dockerfile-run *
|
||||
# *********************************************************************
|
||||
# ENV DEBIAN_FRONTEND=noninteractive
|
||||
# ** [Optional] Uncomment this section to install additional packages. **
|
||||
#
|
||||
# ARG DEBIAN_FRONTEND=noninteractive
|
||||
# RUN apt-get update \
|
||||
# && apt-get -y install --no-install-recommends <your-package-list-here> \
|
||||
# #
|
||||
# # Clean up
|
||||
# && apt-get autoremove -y \
|
||||
# && apt-get clean -y \
|
||||
# && rm -rf /var/lib/apt/lists/*
|
||||
# ENV DEBIAN_FRONTEND=dialog
|
||||
# && apt-get -y install --no-install-recommends <your-package-list-here>
|
||||
|
||||
# Uncomment to default to non-root user
|
||||
# USER $USER_UID
|
||||
|
||||
|
|
|
@ -6,6 +6,39 @@ Note that this folder contains a dev container that can be used to test the scri
|
|||
|
||||
See [CONTRIBUTING.md](../CONTRIBUTING.md) for details on contributing definitions to this repository.
|
||||
|
||||
## Using a script
|
||||
|
||||
To use a script, simply download it using `curl` or `wget` and execute it. For example:
|
||||
|
||||
```Dockerfile
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install --no-install-recommends curl ca-certificates 2>&1 \
|
||||
&& curl -sSL -o- "https://raw.githubusercontent.com/microsoft/vscode-dev-containers/master/script-library/common-debian.sh" | bash -
|
||||
```
|
||||
|
||||
Some scripts include arguments that you can allow developers to set by using `ARG` in your `Dockerfile`. In addition, you can cause the build system for this repository to generate and validate a `SHA` checksum to verify the script has not been changed by adding the script to an `ARG` that ends in `_SCRIPT_SOURCE` and `_SCRIPT_SHA`.
|
||||
|
||||
For example:
|
||||
|
||||
```Dockerfile
|
||||
# Options for common package install script - SHA updated on release
|
||||
ARG INSTALL_ZSH="true"
|
||||
ARG UPGRADE_PACKAGES="true"
|
||||
ARG COMMON_SCRIPT_SOURCE="https://raw.githubusercontent.com/microsoft/vscode-dev-containers/master/script-library/common-debian.sh"
|
||||
ARG COMMON_SCRIPT_SHA="dev-mode"
|
||||
|
||||
# Configure apt and install packages
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
RUN apt-get update \
|
||||
#
|
||||
# Verify git, common tools / libs installed, add/modify non-root user, optionally install zsh
|
||||
&& apt-get -y install --no-install-recommends curl ca-certificates 2>&1 \
|
||||
&& curl -sSL ${COMMON_SCRIPT_SOURCE} -o /tmp/common-setup.sh \
|
||||
&& ([ "${COMMON_SCRIPT_SHA}" = "dev-mode" ] || (echo "${COMMON_SCRIPT_SHA} /tmp/common-setup.sh" | sha256sum -c -)) \
|
||||
&& /bin/bash /tmp/common-setup.sh "${INSTALL_ZSH}" "${USERNAME}" "${USER_UID}" "${USER_GID}" "${UPGRADE_PACKAGES}" \
|
||||
&& rm /tmp/common-setup.sh
|
||||
```
|
||||
|
||||
## License
|
||||
|
||||
Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
|
|
|
@ -6,13 +6,13 @@
|
|||
|
||||
# Syntax: ./common-alpine.sh <install zsh flag> <username> <user UID> <user GID>
|
||||
|
||||
INSTALL_ZSH=$1
|
||||
USERNAME=$2
|
||||
USER_UID=$3
|
||||
USER_GID=$4
|
||||
|
||||
set -e
|
||||
|
||||
INSTALL_ZSH=${1:-"true"}
|
||||
USERNAME=${2:-"$(awk -v val=1000 -F ":" '$3==val{print $1}' /etc/passwd)"}
|
||||
USER_UID=${3:-1000}
|
||||
USER_GID=${4:-1000}
|
||||
|
||||
if [ "$(id -u)" -ne 0 ]; then
|
||||
echo 'Script must be run a root. Use sudo or set "USER root" before running the script.'
|
||||
exit 1
|
||||
|
@ -29,6 +29,8 @@ apk add --no-cache \
|
|||
curl \
|
||||
wget \
|
||||
unzip \
|
||||
nano \
|
||||
jq \
|
||||
procps \
|
||||
coreutils \
|
||||
ca-certificates \
|
||||
|
@ -42,18 +44,6 @@ apk add --no-cache \
|
|||
shadow
|
||||
|
||||
# Create or update a non-root user to match UID/GID - see https://aka.ms/vscode-remote/containers/non-root-user.
|
||||
if [ "$USER_UID" = "" ]; then
|
||||
USER_UID=1000
|
||||
fi
|
||||
|
||||
if [ "$USER_GID" = "" ]; then
|
||||
USER_GID=1000
|
||||
fi
|
||||
|
||||
if [ "$USERNAME" = "" ]; then
|
||||
USERNAME=$(awk -v val=1000 -F ":" '$3==val{print $1}' /etc/passwd)
|
||||
fi
|
||||
|
||||
if id -u $USERNAME > /dev/null 2>&1; then
|
||||
# User exists, update if needed
|
||||
if [ "$USER_GID" != "$(id -G $USERNAME)" ]; then
|
||||
|
@ -74,18 +64,17 @@ apk add --no-cache sudo
|
|||
echo $USERNAME ALL=\(root\) NOPASSWD:ALL > /etc/sudoers.d/$USERNAME
|
||||
chmod 0440 /etc/sudoers.d/$USERNAME
|
||||
|
||||
# Ensure ~/.local/bin is in the PATH for root and non-root users for bash
|
||||
echo "export PATH=\$PATH:\$HOME/.local/bin" | tee -a /root/.bashrc >> /home/$USERNAME/.bashrc
|
||||
# Ensure ~/.local/bin is in the PATH for root and non-root users for bash. (zsh is later)
|
||||
echo "export PATH=\$PATH:\$HOME/.local/bin" | tee -a /root/.bashrc >> /home/$USERNAME/.bashrc
|
||||
chown $USER_UID:$USER_GID /home/$USERNAME/.bashrc
|
||||
|
||||
# Optionally install and configure zsh
|
||||
if [ "$INSTALL_ZSH" = "true" ]; then
|
||||
apk add --no-cache zsh
|
||||
sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
|
||||
echo "export PATH=\$PATH:\$HOME/.local/bin" | tee -a /root/.zshrc
|
||||
echo "export PATH=\$PATH:\$HOME/.local/bin" >> /root/.zshrc
|
||||
cp -R /root/.oh-my-zsh /home/$USERNAME
|
||||
cp /root/.zshrc /home/$USERNAME
|
||||
sed -i -e "s/\/root\/.oh-my-zsh/\/home\/$USERNAME\/.oh-my-zsh/g" /home/$USERNAME/.zshrc
|
||||
chown -R $USER_UID:$USER_GID /home/$USERNAME/.oh-my-zsh /home/$USERNAME/.zshrc
|
||||
fi
|
||||
|
||||
|
|
|
@ -12,6 +12,7 @@ INSTALL_ZSH=${1:-"true"}
|
|||
USERNAME=${2:-"$(awk -v val=1000 -F ":" '$3==val{print $1}' /etc/passwd)"}
|
||||
USER_UID=${3:-1000}
|
||||
USER_GID=${4:-1000}
|
||||
UPGRADE_PACKAGES=${5:-true}
|
||||
|
||||
if [ "$(id -u)" -ne 0 ]; then
|
||||
echo 'Script must be run a root. Use sudo or set "USER root" before running the script.'
|
||||
|
@ -21,8 +22,13 @@ fi
|
|||
# Ensure apt is in non-interactive to avoid prompts
|
||||
export DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# Install apt-utils to avoid debconf warning
|
||||
apt-get -y install --no-install-recommends apt-utils 2> >( grep -v 'debconf: delaying package configuration, since apt-utils is not installed' >&2 )
|
||||
|
||||
# Get to latest versions of all packages
|
||||
apt-get -y upgrade
|
||||
if [ "${UPGRADE_PACKAGES}" = "true" ]; then
|
||||
apt-get -y upgrade --no-install-recommends
|
||||
fi
|
||||
|
||||
# Install common dependencies
|
||||
apt-get -y install --no-install-recommends \
|
||||
|
@ -34,9 +40,12 @@ apt-get -y install --no-install-recommends \
|
|||
curl \
|
||||
wget \
|
||||
unzip \
|
||||
nano \
|
||||
jq \
|
||||
lsb-release \
|
||||
ca-certificates \
|
||||
apt-transport-https \
|
||||
gnupg \
|
||||
libc6 \
|
||||
libgcc1 \
|
||||
libgssapi-krb5-2 \
|
||||
|
@ -89,15 +98,15 @@ apt-get install -y sudo
|
|||
echo $USERNAME ALL=\(root\) NOPASSWD:ALL > /etc/sudoers.d/$USERNAME
|
||||
chmod 0440 /etc/sudoers.d/$USERNAME
|
||||
|
||||
# Ensure ~/.local/bin is in the PATH for root and non-root users for bash
|
||||
echo "export PATH=\$PATH:\$HOME/.local/bin" | tee -a /root/.bashrc >> /home/$USERNAME/.bashrc
|
||||
# Ensure ~/.local/bin is in the PATH for root and non-root users for bash. (zsh is later)
|
||||
echo "export PATH=\$PATH:\$HOME/.local/bin" | tee -a /root/.bashrc >> /home/$USERNAME/.bashrc
|
||||
chown $USER_UID:$USER_GID /home/$USERNAME/.bashrc
|
||||
|
||||
# Optionally install and configure zsh
|
||||
if [ "$INSTALL_ZSH" = "true" ]; then
|
||||
apt-get install -y zsh
|
||||
sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
|
||||
echo "export PATH=\$PATH:\$HOME/.local/bin" | tee -a /root/.zshrc
|
||||
echo "export PATH=\$PATH:\$HOME/.local/bin" >> /root/.zshrc
|
||||
cp -R /root/.oh-my-zsh /home/$USERNAME
|
||||
cp /root/.zshrc /home/$USERNAME
|
||||
sed -i -e "s/\/root\/.oh-my-zsh/\/home\/$USERNAME\/.oh-my-zsh/g" /home/$USERNAME/.zshrc
|
||||
|
|
|
@ -6,20 +6,23 @@
|
|||
|
||||
# Syntax: ./common-redhat.sh <install zsh flag> <username> <user UID> <user GID>
|
||||
|
||||
INSTALL_ZSH=$1
|
||||
USERNAME=$2
|
||||
USER_UID=$3
|
||||
USER_GID=$4
|
||||
|
||||
set -e
|
||||
|
||||
INSTALL_ZSH=${1:-"true"}
|
||||
USERNAME=${2:-"$(awk -v val=1000 -F ":" '$3==val{print $1}' /etc/passwd)"}
|
||||
USER_UID=${3:-1000}
|
||||
USER_GID=${4:-1000}
|
||||
UPGRADE_PACKAGES=${5:-true}
|
||||
|
||||
if [ "$(id -u)" -ne 0 ]; then
|
||||
echo 'Script must be run a root. Use sudo or set "USER root" before running the script.'
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Update to latest versions of packages
|
||||
yum upgrade -y
|
||||
if [ "${UPGRADE_PACKAGES}" = "true" ]; then
|
||||
yum upgrade -y
|
||||
fi
|
||||
|
||||
# Install common dependencies
|
||||
yum install -y \
|
||||
|
@ -32,6 +35,8 @@ yum install -y \
|
|||
wget \
|
||||
procps \
|
||||
unzip \
|
||||
nano \
|
||||
jq \
|
||||
ca-certificates \
|
||||
openssl-libs \
|
||||
krb5-libs \
|
||||
|
@ -44,18 +49,6 @@ if yum -q list compat-openssl10 >/dev/null 2>&1; then
|
|||
fi
|
||||
|
||||
# Create or update a non-root user to match UID/GID - see https://aka.ms/vscode-remote/containers/non-root-user.
|
||||
if [ "$USER_UID" = "" ]; then
|
||||
USER_UID=1000
|
||||
fi
|
||||
|
||||
if [ "$USER_GID" = "" ]; then
|
||||
USER_GID=1000
|
||||
fi
|
||||
|
||||
if [ "$USERNAME" = "" ]; then
|
||||
USERNAME=$(awk -v val=1000 -F ":" '$3==val{print $1}' /etc/passwd)
|
||||
fi
|
||||
|
||||
if id -u $USERNAME > /dev/null 2>&1; then
|
||||
# User exists, update if needed
|
||||
if [ "$USER_GID" != "$(id -G $USERNAME)" ]; then
|
||||
|
@ -76,17 +69,18 @@ yum install -y sudo
|
|||
echo $USERNAME ALL=\(root\) NOPASSWD:ALL > /etc/sudoers.d/$USERNAME
|
||||
chmod 0440 /etc/sudoers.d/$USERNAME
|
||||
|
||||
# Ensure ~/.local/bin is in the PATH for root and non-root users for bash
|
||||
echo "export PATH=\$PATH:\$HOME/.local/bin" | tee -a /root/.bashrc >> /home/$USERNAME/.bashrc
|
||||
# Ensure ~/.local/bin is in the PATH for root and non-root users for bash. (zsh is later)
|
||||
echo "export PATH=\$PATH:\$HOME/.local/bin" | tee -a /root/.bashrc >> /home/$USERNAME/.bashrc
|
||||
chown $USER_UID:$USER_GID /home/$USERNAME/.bashrc
|
||||
|
||||
# Optionally install and configure zsh
|
||||
if [ "$INSTALL_ZSH" = "true" ]; then
|
||||
yum install -y zsh
|
||||
sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
|
||||
echo "export PATH=\$PATH:\$HOME/.local/bin" | tee -a /root/.zshrc
|
||||
echo "export PATH=\$PATH:\$HOME/.local/bin" >> /root/.zshrc
|
||||
cp -R /root/.oh-my-zsh /home/$USERNAME
|
||||
cp /root/.zshrc /home/$USERNAME
|
||||
sed -i -e "s/\/root\/.oh-my-zsh/\/home\/$USERNAME\/.oh-my-zsh/g" /home/$USERNAME/.zshrc
|
||||
chown -R $USER_UID:$USER_GID /home/$USERNAME/.oh-my-zsh /home/$USERNAME/.zshrc
|
||||
fi
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче