hippo
vscode-dev-containers
Our great sponsors
hippo | vscode-dev-containers | |
---|---|---|
5 | 41 | |
408 | 4,625 | |
0.2% | - | |
1.2 | 0.0 | |
9 months ago | 5 months ago | |
TypeScript | Shell | |
GNU General Public License v3.0 or later | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
hippo
-
Plunder and Urbit
You may laugh, but a few years ago all those guys who sold us (some of? us - me anyway) on Kubernetes evidently got bored with it, and now they're all building a Hippo Factory[1]. And it's actually really good. This is the current timeline!
[1] https://docs.hippofactory.dev/
- Isolates, MicroVMs, and WebAssembly (In 2022)
-
Exploring .NET WebAssembly with WASI and Wasmtime
WebAssembly (Wasm) is something that the Cloud Native Advocacy team has been exploring. It has been around for a few years and has mostly been used within browser-based applications. There are many blog posts on what makes WebAssembly an ideal target for running applications (e.g., smaller footprint with .wasm files compared to containers, code isolation, and sandboxing). My colleague Steven Murawski wrote a blog series on getting started with hosting Wasm apps on an emerging PaaS platform called Hippo which is developed by folks at Fermyon. In Part 1 of the series, he introduces topics and define some of the acronyms like "Wagi" and "WASI". He also introduced a runtime called Wasmtime which implements the WebAssembly System Interface (WASI) standard. This article will walk you through how Steven and I went about getting a .NET console app running as a Wasm app on the Wasmtime runtime in a Dev Container. The .NET console app produced in this article has also been contributed as a csharp template in the yo-wasm repo which is also maintained by Fermyon; so you can quickly test it out for yourself later.
- Supabase (YC S20) raises $80M Series B
- Hippo
vscode-dev-containers
- How to use Ansible on Linux with tools like visual Studio code
-
Setup GitHub Codespaces with AWS IAM Roles Anywhere
// For format details, see https://aka.ms/devcontainer.json. For config options, see the README at: // https://github.com/microsoft/vscode-dev-containers/tree/v0.241.1/containers/ubuntu { "name": "Ubuntu", "build": { "dockerfile": "Dockerfile", "args": { "VARIANT": "ubuntu-22.04" } }, "postStartCommand": ".devcontainer/env.sh", "remoteUser": "vscode", "features": { "git": "os-provided", "aws-cli": "latest", "golang": "latest", "sshd": "latest" } }
-
Jupyter Notebooks + VSCode Dev Container with Puppeteer support
# See here for image contents: https://github.com/microsoft/vscode-dev-containers/tree/v0.245.0/containers/python-3/.devcontainer/base.Dockerfile # [Choice] Python version (use -bullseye variants on local arm64/Apple Silicon): 3, 3.10, 3.9, 3.8, 3.7, 3.6, 3-bullseye, 3.10-bullseye, 3.9-bullseye, 3.8-bullseye, 3.7-bullseye, 3.6-bullseye, 3-buster, 3.10-buster, 3.9-buster, 3.8-buster, 3.7-buster, 3.6-buster ARG VARIANT="3.10-bullseye" FROM mcr.microsoft.com/vscode/devcontainers/python:0-${VARIANT} # [Choice] Node.js version: none, lts/*, 16, 14, 12, 10 ARG NODE_VERSION="none" RUN if [ "${NODE_VERSION}" != "none" ]; then su vscode -c "umask 0002 && . /usr/local/share/nvm/nvm.sh && nvm install ${NODE_VERSION} 2>&1"; fi # Install Google Chrome Stable and fonts # Note: this installs the necessary libs to make the browser work with Puppeteer. ENV PUPPETEER_SKIP_CHROMIUM_DOWNLOAD true RUN apt-get update && apt-get install gnupg wget -y && \ wget --quiet --output-document=- https://dl-ssl.google.com/linux/linux_signing_key.pub | gpg --dearmor > /etc/apt/trusted.gpg.d/google-archive.gpg && \ sh -c 'echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google.list' && \ apt-get update && \ apt-get install google-chrome-stable -y --no-install-recommends && \ rm -rf /var/lib/apt/lists/* # [Optional] If your pip requirements rarely change, uncomment this section to add them to the image. COPY requirements.txt /tmp/pip-tmp/ RUN pip3 --disable-pip-version-check --no-cache-dir install -r /tmp/pip-tmp/requirements.txt \ && rm -rf /tmp/pip-tmp
- VS Code Dev Containers: A repository of development container definitions
-
rust-analyzer changelog #143
Looks like they do? https://github.com/microsoft/vscode-dev-containers/issues/675
-
Exploring .NET WebAssembly with WASI and Wasmtime
In the vscode-dev-containers repo, you'll see that there too is a .devcontainer directory. This contains instructions for building the dotnet vscode-dev-container. Click into the directory.
-
Recommended devcontainers for both Python and R workflows?
I'm trying to set up a dev environment which utilises the standard Python 3 devcontainer for Python files (which is great IMO), but also utilises the R devcontainer for R files. Or at the very least sets up the basic R for VSCode environment espoused on the VSCode tutorials.
-
Introduction to GitHub Codespaces - Building your first Dev Container
Select a predefined container definition. In my case I will select 'Ubuntu'. NOTE: There is a growing variety of predefined images that can be selected from, maintained on GitHubs vscode-dev-containers repository:
-
Extending VSCode Dev Container Features
As documented here, a Dev Container's built-in features are sources from the script-library folder in the vscode-dev-containers repo. The Remote - Containers extension and GitHub Codespaces include "preview" functionality to extend Dev Container features. You can add any custom feature by using the dev-container-features-template sample repository.
-
what is a development container?
In your case in the development container you can specify a specific version of .NET SDK and Azure Functions SDK. There is a premade devcontainer for VSCode with Azure Functions and C#: https://github.com/microsoft/vscode-dev-containers/tree/main/containers/azure-functions-dotnet-6-isolated
What are some alternatives?
yeoman - Yeoman - a set of tools for automating development workflow
distrobox - Use any linux distribution inside your terminal. Enable both backward and forward compatibility with software and freedom to use whatever distribution you’re more comfortable with. Mirror available at: https://gitlab.com/89luca89/distrobox
dotnet-wasi-sdk - Packages for building .NET projects as standalone WASI-compliant modules
openvscode-server - Run upstream VS Code on a remote machine with access through a modern web browser from any device, anywhere.
protobuf-rules-gen - This is an experimental protoc plugin that generates Firebase Rules for Cloud Firestore based on Google's Protocol Buffer format. This allows you to easily validate your data in a platform independent manner.
Code-Server - VS Code in the browser
yo-wasm - Yeoman generator for Rust projects intended to build to WASM in OCI registries
dotfiles - ⊙ All the dotfiles needed to make the world a better place
yo-wasm - Yeoman generator for Rust projects intended to build to WASM in OCI registries
Vagrant - Vagrant is a tool for building and distributing development environments.
Visual Studio Code - Visual Studio Code
SDKMan - The SDKMAN! Command Line Interface