Skip to content

Commit 8d42490

Browse files
authored
Add files via upload
Signed-off-by: eCampuslearning-Dev <[email protected]>
1 parent 84ed503 commit 8d42490

26 files changed

+1080
-0
lines changed

config.json

Lines changed: 260 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,260 @@
1+
{
2+
"containerRegistry": "devcon.azurecr.io",
3+
"containerRegistryPath": "public/vscode/devcontainers",
4+
"stubRegistry": "mcr.microsoft.com",
5+
"stubRegistryPath": "vscode/devcontainers",
6+
7+
"githubRepoName": "microsoft/vscode-dev-containers",
8+
"containersPathInRepo": "containers",
9+
"historyFolderName": "history",
10+
"scriptLibraryPathInRepo": "script-library",
11+
"scriptLibraryFolderNameInDefinition": "library-scripts",
12+
"historyUrlPrefix": "https://github.com/microsoft/vscode-dev-containers/tree/main/containers/",
13+
"repositoryUrl": "https://github.com/microsoft/vscode-dev-containers/",
14+
"imageLabelPrefix": "com.visualstudio.code.devcontainers",
15+
"definitionBuildConfigFile": "definition-manifest.json",
16+
17+
"devContainerJsonPreamble": "For format details, see https://aka.ms/devcontainer.json. For config options, see the README at:\n// ",
18+
"dockerFilePreamble": "See here for image contents: ",
19+
20+
"filesToStage": [
21+
"+(containers|repository-containers)/**/!(test-project|history)/*",
22+
"script-library/**/*",
23+
"LICENSE",
24+
"package.json",
25+
"yarn.lock",
26+
".npmignore",
27+
"devcontainer-collection.json"
28+
],
29+
30+
"needsDedicatedPage": [],
31+
32+
"flattenBaseImage": [],
33+
34+
"poolKeys": {
35+
"https://dl.yarnpkg.com/debian": "https://dl.yarnpkg.com/debian/pubkey.gpg",
36+
"https://packages.microsoft.com/repos/microsoft-debian-stretch-prod": "https://packages.microsoft.com/keys/microsoft.asc",
37+
"https://packages.microsoft.com/repos/microsoft-debian-buster-prod": "https://packages.microsoft.com/keys/microsoft.asc",
38+
"https://packages.microsoft.com/repos/microsoft-debian-bullseye-prod": "https://packages.microsoft.com/keys/microsoft.asc",
39+
"https://packages.microsoft.com/repos/microsoft-ubuntu-focal-prod": "https://packages.microsoft.com/keys/microsoft.asc",
40+
"https://packages.microsoft.com/repos/microsoft-ubuntu-bionic-prod": "https://packages.microsoft.com/keys/microsoft.asc",
41+
"https://packages.microsoft.com/repos/microsoft-ubuntu-jammy-prod": "https://packages.microsoft.com/keys/microsoft.asc",
42+
"https://packages.microsoft.com/repos/azure-cli": "https://packages.microsoft.com/keys/microsoft.asc",
43+
"http://archive.ubuntu.com/ubuntu": "http://archive.ubuntu.com/ubuntu/project/ubuntu-archive-keyring.gpg",
44+
"http://security.ubuntu.com/ubuntu": "http://security.ubuntu.com/ubuntu/project/ubuntu-archive-keyring.gpg",
45+
"https://packagecloud.io/github/git-lfs/ubuntu": "https://packagecloud.io/github/git-lfs/gpgkey",
46+
"https://packagecloud.io/github/git-lfs/debian": "https://packagecloud.io/github/git-lfs/gpgkey"
47+
},
48+
49+
"poolUrlFallback": {
50+
"moby-cli": "https://packages.microsoft.com/repos/microsoft-ubuntu-focal-prod",
51+
"moby-engine": "https://packages.microsoft.com/repos/microsoft-ubuntu-focal-prod",
52+
"powershell": "https://packages.microsoft.com/repos/microsoft-ubuntu-focal-prod",
53+
"yarn": "https://dl.yarnpkg.com/debian",
54+
"git-lfs": "https://packagecloud.io/github/git-lfs/ubuntu",
55+
"azure-cli": "https://packages.microsoft.com/repos/azure-cli"
56+
},
57+
58+
"commonDependencies": {
59+
"apt": [
60+
"apt-utils",
61+
"git",
62+
"openssh-client",
63+
"gnupg2",
64+
"iproute2",
65+
"procps",
66+
"lsof",
67+
"htop",
68+
"net-tools",
69+
"psmisc",
70+
"curl",
71+
"wget",
72+
"rsync",
73+
"ca-certificates",
74+
"unzip",
75+
"zip",
76+
"nano",
77+
"vim-tiny",
78+
"less",
79+
"jq",
80+
"lsb-release",
81+
"apt-transport-https",
82+
"dialog",
83+
"libc6",
84+
"libgcc1",
85+
"libkrb5-3",
86+
"libgssapi-krb5-2",
87+
"libicu[0-9][0-9]",
88+
"liblttng-ust0",
89+
"libstdc++6",
90+
"zlib1g",
91+
"locales",
92+
"sudo",
93+
"ncdu",
94+
"man-db",
95+
"strace",
96+
"libssl1.1",
97+
"libssl1.0.[0-9]",
98+
"manpages",
99+
"manpages-dev",
100+
"manpages-posix",
101+
"manpages-posix-dev",
102+
"zsh"
103+
],
104+
"apk": [
105+
"git",
106+
"openssh-client",
107+
"gnupg",
108+
"procps",
109+
"lsof",
110+
"htop",
111+
"net-tools",
112+
"psmisc",
113+
"curl",
114+
"wget",
115+
"rsync",
116+
"ca-certificates",
117+
"unzip",
118+
"zip",
119+
"nano",
120+
"vim",
121+
"less",
122+
"jq",
123+
"libgcc",
124+
"libstdc++",
125+
"krb5-libs",
126+
"libintl",
127+
"libssl1.1",
128+
"lttng-ust",
129+
"tzdata",
130+
"userspace-rcu",
131+
"zlib",
132+
"sudo",
133+
"coreutils",
134+
"sed",
135+
"grep",
136+
"which",
137+
"ncdu",
138+
"shadow",
139+
"strace",
140+
"man",
141+
"man-doc",
142+
"man-pages"
143+
]
144+
},
145+
146+
"otherDependencyDefaultSettings": {
147+
"SDKMAN!": {
148+
"versionCommand": ". /usr/local/sdkman/bin/sdkman-init.sh && echo 'n' | sdk version | grep -oP 'SDKMAN\\s+\\K[0-9]+\\.[0-9]+\\.[0-9]+[+0-9a-z]*' | tr -d '[:cntrl:]'",
149+
"path": "/usr/local/sdkman",
150+
"downloadUrl": "https://github.com/sdkman/sdkman-cli"
151+
},
152+
"rvm": {
153+
"versionCommand": "cat /usr/local/rvm/VERSION",
154+
"path": "/usr/local/rvm",
155+
"downloadUrl": "https://github.com/rvm/rvm"
156+
},
157+
"kubectl": {
158+
"versionCommand": "kubectl version --client | grep -oP 'GitVersion\\s*:\\s*\\\"v\\K[0-9]+\\.[0-9]+\\.[0-9]+'",
159+
"path": "/usr/local/bin",
160+
"downloadUrl": "https://github.com/kubernetes/kubectl"
161+
},
162+
"Helm": {
163+
"versionCommand": "helm version | grep -oP 'Version\\s*:\\s*\\\"v\\K[0-9]+\\.[0-9]+\\.[0-9]+'",
164+
"path": "/usr/local/bin",
165+
"downloadUrl": "https://github.com/helm/helm"
166+
},
167+
"Docker Compose": {
168+
"versionCommand": "docker-compose version | grep -m 1 -oE '[0-9]+\\.[0-9]+\\.[0-9]+[+0-9a-z]*'",
169+
"path": "/usr/local/bin",
170+
"downloadUrl": "https://github.com/docker/compose"
171+
},
172+
"git": {
173+
"versionCommand": "git --version | sed -n '/git version /s///p'",
174+
"downloadUrl": "https://github.com/git/git"
175+
},
176+
"Xdebug": {
177+
"versionCommand": "php --version | grep -oP 'with\\s+Xdebug\\s+v\\K[0-9]+\\.[0-9]+\\.[0-9]+'",
178+
"downloadUrl": "https://xdebug.org/"
179+
},
180+
"Composer": {
181+
"versionCommand": "composer --no-ansi --version 2>/dev/null | grep -oE '[0-9]+\\.[0-9]+\\.[0-9]+'",
182+
"downloadUrl": "https://getcomposer.org/"
183+
},
184+
"GitHub CLI": {
185+
"versionCommand": "gh version 2>&1 | grep -oP 'version\\s\\K[^ ]+'",
186+
"downloadUrl": "https://github.com/cli/cli"
187+
},
188+
"yarn": {
189+
"versionCommand": "yarn --version",
190+
"downloadUrl": "https://yarnpkg.com/"
191+
},
192+
"Maven": {
193+
"versionCommand": "mvn -version | grep -oP '^Apache\\sMaven\\s+\\K[0-9]+\\.[0-9]+[\\.+0-9a-z]*'",
194+
"downloadUrl": "https://maven.apache.org/"
195+
},
196+
"Gradle": {
197+
"versionCommand": "gradle --version | grep -oP '^Gradle\\s+\\K[0-9]+\\.[0-9]+(\\.[0-9]+)?$'",
198+
"downloadUrl": "https://gradle.org/"
199+
},
200+
"Docker (Moby) CLI": {
201+
"versionCommand": "docker --version | grep -oE '[0-9]+\\.[0-9]+\\.[0-9]+[+0-9a-z]*'"
202+
},
203+
"Docker (Moby) CLI & Engine": {
204+
"versionCommand": "docker --version | grep -oE '[0-9]+\\.[0-9]+\\.[0-9]+[+0-9a-z]*'"
205+
},
206+
"PowerShell": {
207+
"versionCommand": "pwsh --version | grep -oE '[0-9]+\\.[0-9]+\\.[0-9]+'",
208+
"path": "/opt/microsoft/powershell",
209+
"downloadUrl": "https://docs.microsoft.com/en-us/powershell/"
210+
},
211+
"GCC": {
212+
"versionCommand": "gcc --version | grep -oE '[0-9]+\\.[0-9]+\\.[0-9]+.*)' | tr -d ')'"
213+
},
214+
"Clang": {
215+
"versionCommand": "clang --version | grep -oE '[0-9]+\\.[0-9]+\\.[0-9]+.*'"
216+
},
217+
"Go": {
218+
"versionCommand": "go version | grep -oP -m 1 'version\\sgo\\K[^ ]+'",
219+
"path": "/usr/local/go",
220+
"downloadUrl": "https://golang.org/dl"
221+
},
222+
"Rust": {
223+
"versionCommand": "rustc --version | grep -oP '^rustc\\s\\K[^ ]+'",
224+
"path": "/usr/local/cargo<br />/usr/local/rustup",
225+
"downloadUrl": "https://github.com/rust-lang/rust"
226+
},
227+
"PHP": {
228+
"versionCommand": "php --version | grep -oP 'PHP\\s\\K[0-9][^\\s]+'",
229+
"downloadUrl":"https://xdebug.org/"
230+
},
231+
"Java": {
232+
"versionCommand": "java --version | grep -oP 'openjdk\\s+\\K[0-9]+\\.[0-9]+\\.[0-9]+'",
233+
"downloadUrl": "https://adoptopenjdk.net/"
234+
},
235+
".NET": {
236+
"versionCommand": "dotnet --version | grep -oE '[0-9]+\\.[0-9]+\\.[0-9]+' | tr -d '\\n' && echo \\\" (\\$(dotnet --info | grep -ozP 'Host.*:\\s*Version:\\s*\\K[0-9]\\.[0-9]\\.[0-9]' | tr '\\0' '\\n'))\\\"",
237+
"downloadUrl": "https://dotnet.microsoft.com/"
238+
},
239+
"Ruby": {
240+
"versionCommand": "ruby --version | grep -oP '^ruby\\s+\\K[^\\s]+'",
241+
"downloadUrl": "https://www.ruby-lang.org/en/"
242+
},
243+
"Python": {
244+
"versionCommand": "python --version | grep -oE '[0-9]+\\.[0-9]+\\.[0-9]+'",
245+
"downloadUrl": "https://www.python.org/"
246+
},
247+
"Node.js": {
248+
"versionCommand": "node --version | grep -oE '[0-9]+\\.[0-9]+\\.[0-9]+'",
249+
"downloadUrl": "https://nodejs.org/en/"
250+
},
251+
"conda": {
252+
"versionCommand": "conda --version | grep -oE '[0-9]+\\.[0-9]+\\.[0-9]+'",
253+
"downloadUrl": "https://github.com/conda/conda"
254+
},
255+
"Jekyll": {
256+
"versionCommand": "jekyll --version | grep -oE '[0-9]+\\.[0-9]+\\.[0-9]+'",
257+
"downloadUrl": "https://jekyllrb.com/"
258+
}
259+
}
260+
}

devcontainer/Dockerfile

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
FROM mcr.microsoft.com/vscode/devcontainers/repos/microsoft/vscode:latest
2+
3+
ENV DONT_PROMPT_WSL_INSTALL=true
4+
COPY fluxbox/* /tmp/fluxbox/
5+
COPY *.sh /tmp/scripts/
6+
RUN bash /tmp/scripts/install.sh \
7+
&& apt-get clean -y && rm -rf /var/lib/apt/lists/* /tmp/scripts/ /tmp/fluxbox/ \
8+
&& git config --global codespaces-theme.hide-status 1

devcontainer/README.md

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
# Dev Container for vscode-dev-containers
2+
3+
[![Open in Remote - Containers](https://img.shields.io/static/v1?label=Remote%20-%20Containers&message=Open&color=blue&logo=visualstudiocode)](https://vscode.dev/redirect?url=vscode://ms-vscode-remote.remote-containers/cloneInVolume?url=https://github.com/microsoft/vscode-dev-containers)
4+
5+
This folder includes a configuration for building dev containers or reviewing PRs inside of another dev container - "Inception" style 😎. It includes the Moby/Docker and a desktop with VS Code stable, insiders, and the Remote - Containers extension installed for quick testing of local scenarios when needed.
6+
7+
A web-based desktop viewer is automatically forwarded. The login password is `vscode`.
8+
9+
Run <kbd>F1</kbd> / <kbd>Ctrl/Cmd</kbd> + <kbd>Shift</kbd> + <kbd>p</kbd> and select **Ports: Focus on Ports View** to see the address to use to connect to it.
10+
11+
If you already have VS Code and Docker installed, you can click the badge above or [here](https://vscode.dev/redirect?url=vscode://ms-vscode-remote.remote-containers/cloneInVolume?url=https://github.com/microsoft/vscode-dev-containers) to get started. Clicking these links will cause VS Code to automatically install the Remote - Containers extension if needed, clone the source code into a container volume, and spin up a dev container for use.
12+
13+
However, most likely, this was not what you were looking for when you came to this repository. Actual dev container definitions can be found [under the `/containers` folder](https://github.com/microsoft/vscode-dev-containers/tree/main/containers) in this repository.

devcontainer/devcontainer.json

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
{
2+
"build": {
3+
"dockerfile": "Dockerfile"
4+
},
5+
"runArgs": [
6+
"--shm-size=1g"
7+
],
8+
// Configure tool-specific properties.
9+
"customizations": {
10+
// Configure properties specific to VS Code.
11+
"vscode": {
12+
// Set *default* container specific settings.json values on container create.
13+
"settings": {
14+
"resmon.show.battery": false,
15+
"resmon.show.cpufreq": false
16+
},
17+
18+
// Add the IDs of extensions you want installed when the container is created.
19+
"extensions": [
20+
"ms-azuretools.vscode-docker",
21+
"dbaeumer.vscode-eslint",
22+
"rogalmic.bash-debug",
23+
"mads-hartmann.bash-ide-vscode",
24+
"streetsidesoftware.code-spell-checker",
25+
"mutantdino.resourcemonitor",
26+
"bierner.github-markdown-preview",
27+
"EditorConfig.EditorConfig",
28+
"chrisdias.vscode-opennewinstance",
29+
"bobmagicii.dashyeah"
30+
]
31+
}
32+
},
33+
"forwardPorts": [6080],
34+
"portsAttributes": {
35+
"6080": {
36+
"label": "Desktop access (password: vscode)",
37+
"onAutoForward": "silent"
38+
},
39+
"5901": {
40+
"label": "VNC TCP port (password: vscode)",
41+
"onAutoForward": "silent"
42+
}
43+
},
44+
"postCreateCommand": "bash .devcontainer/postCreateCommand.sh",
45+
"remoteUser": "node",
46+
"features": {
47+
"docker-in-docker": "latest",
48+
"github-cli": "latest"
49+
},
50+
"overrideCommand": false,
51+
"hostRequirements": {
52+
"memory": "6gb"
53+
}
54+
}

devcontainer/fluxbox/menu

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
[begin] ( Application Menu )
2+
[exec] (File Manager) { nautilus ~ } <>
3+
[exec] (Text Editor) { mousepad } <>
4+
[exec] (VS Code) { /usr/bin/code } <>
5+
[exec] (VS Code Insiders) { /usr/bin/code-insiders } <>
6+
[exec] (Terminal) { tilix -w ~ -e /bin/bash -il } <>
7+
[exec] (Web Browser) { x-www-browser --disable-dev-shm-usage } <>
8+
[submenu] (System) {}
9+
[exec] (Set Resolution) { tilix -t "Set Resolution" -e bash /usr/local/bin/set-resolution } <>
10+
[exec] (Edit Application Menu) { mousepad ~/.fluxbox/menu } <>
11+
[exec] (Passwords and Keys) { seahorse } <>
12+
[exec] (Top Processes) { tilix -t "Top" -e htop } <>
13+
[exec] (Disk Utilization) { tilix -t "Disk Utilization" -e ncdu / } <>
14+
[exec] (Editres) {editres} <>
15+
[exec] (Xfontsel) {xfontsel} <>
16+
[exec] (Xkill) {xkill} <>
17+
[exec] (Xrefresh) {xrefresh} <>
18+
[end]
19+
[config] (Configuration)
20+
[workspaces] (Workspaces)
21+
[end]

devcontainer/install.sh

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
#!/bin/bash
2+
set -e
3+
export DEBIAN_FRONTEND=noninteractive
4+
5+
MICROSOFT_GPG_KEYS_URI="https://packages.microsoft.com/keys/microsoft.asc"
6+
7+
# Install VS Code for use in desktop if needed
8+
curl -sSL ${MICROSOFT_GPG_KEYS_URI} | gpg --dearmor > /usr/share/keyrings/microsoft-archive-keyring.gpg
9+
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/microsoft-archive-keyring.gpg] https://packages.microsoft.com/repos/code stable main" > /etc/apt/sources.list.d/vscode.list
10+
apt-get update
11+
apt-get -y install code code-insiders
12+
13+
# Setup Fluxbox menus
14+
mkdir -p /root/.fluxbox /home/node/.fluxbox
15+
cp -f /tmp/fluxbox/* /root/.fluxbox/
16+
cp -f /tmp/fluxbox/* /home/node/.fluxbox/
17+
chown -R node:node /home/node/.fluxbox
18+
echo "export DONT_PROMPT_WSL_INSTALL=true" | tee -a /etc/bash.bashrc >> /etc/profile.d/not-wsl.sh
19+
20+
# Install firefox
21+
apt-get install -y firefox-esr

devcontainer/postCreateCommand.sh

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
#!/usr/bin/env bash
2+
install_extension() {
3+
/usr/bin/code --install-extension $1
4+
/usr/bin/code-insiders --install-extension $1
5+
}
6+
7+
# Install VS Code extensions into VS Code in desktop so we can try
8+
install_extension ms-vscode-remote.remote-containers
9+
install_extension ms-azuretools.vscode-docker
10+
install_extension streetsidesoftware.code-spell-checker
11+
install_extension chrisdias.vscode-opennewinstance
12+
install_extension mads-hartmann.bash-ide-vscode
13+
install_extension rogalmic.bash-debug

0 commit comments

Comments
 (0)