features
templates
Our great sponsors
features | templates | |
---|---|---|
7 | 12 | |
749 | 783 | |
7.2% | 7.7% | |
9.0 | 7.6 | |
about 23 hours ago | 25 days ago | |
Shell | Shell | |
MIT License | 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.
features
-
Dev Containers: Open, Develop, Repeat...
Dev Containers not only allow you to define which extensions should be installed and which configuration settings shall be set, but they also have something they call "Dev Container Features".
-
Unable to Change Workspace Folder Permissions (777 to 775) in WSL VSCode Devcontainer
json { "name": "Ubuntu", // Or use a Dockerfile or Docker Compose file. More info: https://containers.dev/guide/dockerfile "image": "mcr.microsoft.com/devcontainers/base:ubuntu", "features": { "ghcr.io/devcontainers/features/terraform": "latest", "ghcr.io/devcontainers/features/powershell": "latest", "ghcr.io/devcontainers/features/azure-cli": "latest" }, // Features to add to the dev container. More info: https://containers.dev/features. // "features": {}, // Use 'forwardPorts' to make a list of ports inside the container available locally. // "forwardPorts": [], // Use 'postCreateCommand' to run commands after the container is created. // "postStartCommand": "uname -a", // "postCreateCommand": "sudo apt update; sudo apt upgrade -y;", "postAttachCommand": { "git-safe-directory": "git config --global --add safe.directory ${containerWorkspaceFolder}", "ansible_cfg_permissions": "sudo chmod o-w ${containerWorkspaceFolder}" }, "postCreateCommand": { "python": "sudo apt update; sudo apt upgrade -y; sudo apt install -y python3-pip postgresql-client; sudo python3 -m pip install --upgrade pip; pip3 install ansible python-hcl2 psycopg2-binary; ansible-galaxy collection install azure.azcollection", "populate-history": "echo 'ansible-playbook ansible/playbooks/netbox.yml' >> ~/.bash_history; echo 'terraform apply' >> ~/.bash_history; echo 'az login' >> ~/.bash_history" }, // Configure tool-specific properties. // "customizations": {}, // Uncomment to connect as root instead. More info: https://aka.ms/dev-containers-non-root. // "remoteUser": "root" "customizations": { "vscode": { "extensions": [ "GitHub.copilot", "GitHub.copilot-labs", "GitHub.vscode-pull-request-github", "redhat.ansible", "hashicorp.terraform", "ms-toolsai.jupyter", "ms-vscode.powershell", "HashiCorp.terraform", "eamodio.gitlens", "GitHub.copilot-chat" ] } } }
-
Take your development environment anywhere and on any machine with Dev Containers.
there are already built docker images for common development environment. You can either use one of them, or build one from Docker file. Using a pre-built dev container doesn't mean you are only limited to that image, because you can still add other tools, which they are called features to that image. For a list of the pre-built templates check here, and for the other features that you can add check this. You don't need a Docker file, unless you want to build your dev environment step by step.
-
VSCode & GitHub Codespaces for my Python playground
// For format details, see https://aka.ms/devcontainer.json. For config options, see the // README at: https://github.com/devcontainers/templates/tree/main/src/python { "name": "Python 3", "image": "mcr.microsoft.com/devcontainers/python:0-3.11", "features": { "ghcr.io/devcontainers/features/python:1": {} } // Features to add to the dev container. More info: https://containers.dev/features. // "features": {}, // Use 'forwardPorts' to make a list of ports inside the container available locally. // "forwardPorts": [], // Use 'postCreateCommand' to run commands after the container is created. // "postCreateCommand": "pip3 install --user -r requirements.txt", // Configure tool-specific properties. // "customizations": {}, // Uncomment to connect as root instead. More info: https://aka.ms/dev-containers-non-root. // "remoteUser": "root" }
-
Containerizing devops tools with docker compose
This is actually very easy. I've implemented a number of tools like this publicly but the standard doesn't limit you to public stuff. I can't emphasize enough the amount of speed we gained when we implemented this standard. https://containers.dev/features
-
DevContainers for Azure and .NET
features: While you can add everything in Dockerfile for the build, there are already pre-configured features you can optionally add. You can find the complete list of the features at here. Some examples of those features are common utilities and tools like Azure CLI, GitHub CLI and Terraform, and languages like node.js, Java, .NET, Python, etc.
templates
-
Creating a movie finder app with Streamlit and OMDb API
// For format details, see https://aka.ms/devcontainer.json. For config options, see the // README at: https://github.com/devcontainers/templates/tree/main/src/python { "name": "Python 3", // Or use a Dockerfile or Docker Compose file. More info: https://containers.dev/guide/dockerfile "image": "mcr.microsoft.com/devcontainers/python:1-3.11-bullseye", "customizations": { "codespaces": { "openFiles": [ "README.md", "streamlit_app.py" ] }, "vscode": { "settings": {}, "extensions": [ "ms-python.python", "ms-python.vscode-pylance" ] } }, "updateContentCommand": "[ -f packages.txt ] && sudo apt update && sudo apt upgrade && sudo xargs apt install -y
-
Microsoft Docker Development Container Templates
Ooo, they have one for rails + postgres!
https://github.com/devcontainers/templates/tree/main/src/rub...
- .devcontainer Containerized environment workflow
-
ChatGPT Meets GitHub Codespaces: How I'm Optimizing ChatGPT Quickstart Plugins for Remote Development
// For format details, see https://aka.ms/devcontainer.json. For config options, see the // README at: https://github.com/devcontainers/templates/tree/main/src/python { "name": "Python 3", // Or use a Dockerfile or Docker Compose file. More info: https://containers.dev/guide/dockerfile "image": "mcr.microsoft.com/devcontainers/python:0-3.11-bullseye", "features": { "ghcr.io/devcontainers-contrib/features/coverage-py:2": {} } // Features to add to the dev container. More info: https://containers.dev/features. // "features": {}, // Use 'forwardPorts' to make a list of ports inside the container available locally. "forwardPorts": [5003], // Use 'postCreateCommand' to run commands after the container is created. "postCreateCommand": "pip install -r requirements.txt", "postAttachCommand": ".devcontainer/addcodespacename.sh && python main.py", // Configure tool-specific properties. "customizations": { "codespaces": { "openFiles": [ ".well-known/ai-plugin.json", "openapi.yaml" ] } } } // Uncomment to connect as root instead. More info: https://aka.ms/dev-containers-non-root. // "remoteUser": "root" }
- GitHub + Dev Hackathon 2023 - Self-hosted Azure Pipelines Agent Codespace/Dev Container
-
How to Build a Kafka Producer in Rust with Partitioning
$ cd tracing_publisher $ mkdir .devcontainer $ cat > .devcontainer/devcontainer.json // For format details, see https://aka.ms/devcontainer.json. For config options, see the // README at: https://github.com/devcontainers/templates/tree/main/src/rust { "name": "Rust", "service": "rust-log-processing", "dockerComposeFile": "../docker-compose.yml", "features": { "ghcr.io/devcontainers/features/rust:1": {} }, "workspaceFolder": "/workspaces/${localWorkspaceFolderBasename}", "shutdownAction": "stopCompose" }
-
Run self-hosted GitHub runners on GitHub Codespaces (Video Tutorial)
Based on a previous blog post, this devcontainer is now publicly available as a template for anyone to use at Dev Container Templates and integrated with publicly available Codespace images.
-
How to get the best Conda environment experience in Codespaces
When you start a Codespace for a project, it will try to use whatever Dev Container you have specified in your repo, else it will try to use a kitchen sink container. That default kitchen sink is can be way too much and so if you will be working with Conda environments with an Anaconda or Miniconda Dev Container template instead.
-
Configure Python Formatter and Linter for a VSCode Dev Container
This example uses the Docker in Docker dev container. There are others that may suit you better, feel free to customize to your needs. This example doesn’t rely on the exact type of dev container used.
-
Take your development environment anywhere and on any machine with Dev Containers.
there are already built docker images for common development environment. You can either use one of them, or build one from Docker file. Using a pre-built dev container doesn't mean you are only limited to that image, because you can still add other tools, which they are called features to that image. For a list of the pre-built templates check here, and for the other features that you can add check this. You don't need a Docker file, unless you want to build your dev environment step by step.
What are some alternatives?
spec - Development Containers: Use a container as a full-featured development environment.
kcat - Generic command line non-JVM Apache Kafka producer and consumer
devcontainers-dotnet.
features - A collection of development container 'features' for machine learning and data science
images - Repository for pre-built dev container images published under mcr.microsoft.com/devcontainers
conda-devcontainer-demo - Mini Conda + Mamba dev container setup to make working with environments easy.
asdf - Extendable version manager with support for Ruby, Node.js, Elixir, Erlang & more
tracing-blog-post - Example code for a blog post about tracing
zsh-autosuggestions - Fish-like autosuggestions for zsh
tracing - Application level tracing for Rust.
omnisharp-vscode - Official C# support for Visual Studio Code [Moved to: https://github.com/dotnet/vscode-csharp]
docked - Running Rails from Docker for easy start to development