Skip to content

Commit

Permalink
Merge pull request Azure#21 from Azure/add-mcr
Browse files Browse the repository at this point in the history
Add information about the MCR
  • Loading branch information
edyoung authored Aug 21, 2020
2 parents 25f7a21 + e249896 commit 22d5b26
Showing 1 changed file with 32 additions and 9 deletions.
41 changes: 32 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,19 +5,45 @@ Azure Cloud Shell is a browser-based shell environment which enables Azure custo

For more details, check out [Overview of Azure Cloud Shell](https://docs.microsoft.com/azure/cloud-shell/overview#:~:text=Features%201%20Browser-based%20shell%20experience.%20...%202%20Choice,7%20Connect%20your%20Microsoft%20Azure%20Files%20storage.%20).

Try out Cloudshell by clicking the button below.
Try out Cloud Shell by clicking the button below.

[![](https://shell.azure.com/images/launchcloudshell.png "Launch Azure Cloud Shell")](https://shell.azure.com)


# About this repository

When you connect to Azure Cloud Shell, we start a container containing a wide variety of tools, and connect your browser to a shell process running inside that container. This repository contains the Docker files used to build that image. It does _not_ contain all of the code used for the rest of the Azure Cloud Shell service. The code in this repository may not match exactly to what is running in the Cloud Shell service at any given time. The service is updated periodically and changes are gradually rolled out to different regions over time, so there may be a lag of up to 3-4 weeks between a change being made here and being reflected in all Cloud Shell regions.
When you connect to Azure Cloud Shell, we start a container containing a wide variety of tools, and connect your
browser to a shell process running inside that container. This repository contains the Docker files used to build that image.
It does _not_ contain all of the code used for the rest of the Azure Cloud Shell service. The code in this repository may not
match exactly to what is running in the Cloud Shell service at any given time. The service is updated periodically and changes
are gradually rolled out to different regions over time, so there may be a lag of up to 3-4 weeks between a change being made
here and being reflected in all Cloud Shell regions.

This repository has several uses:

1. If you would like to propose a new tool for inclusion in Cloud Shell, you can create an issue or submit a Pull Request to request the tool be added. Please ensure that the PR actually builds within GitHub Actions.
1. **Running the Cloud Shell image locally**. If you want a curated set of up-to-date command-line tools suitable for managing an Azure environment, but you want to run the tools locally on your own computer instead of in Cloud Shell, you can build the image and run it yourself.

1. **Contributing to Cloud Shell.** If you would like to propose a new tool for inclusion in Cloud Shell, you can create an issue or submit a Pull Request to request the tool be added. Please ensure that the PR actually builds within GitHub Actions.


## Running the Cloud Shell image locally

```bash
docker pull mcr.microsoft.com/azure-cloudshell:latest
docker run -it mcr.microsoft.com/azure-cloudshell /bin/bash
```

### Differences between running locally and in Cloud Shell

1. **No identity endpoint**. In Cloud Shell, we provide a way to automatically obtain tokens for the user connected to the shell.
We can't provide this when you run locally, so you have to authenticate explicitly before you can access Azure resources.
When using AZ CLI, run `az login`; for PowerShell, run `Connect-AzAccount`.

2. **No cloud drive**. We don't mount the Cloud Drive from your Azure Cloud Shell, so you won't have access to files stored there.

3. **Root instead of cloud shell user**. In Azure Cloud Shell you always run as a regular user. When running the image locally, you run as root.

2. If you want a curated set of up-to-date command-line tools suitable for managing an Azure environment, but you want to run the tools locally on your own computer instead of in Cloud Shell, you can build the image and run it yourself.
# Contributing to Cloud Shell


## Understanding the base.Dockerfile and tools.Dockerfile
Expand All @@ -35,16 +61,13 @@ aware that changes the the base layer will take longer to release than changes t
| Base | Contains large, infrequently changing packages. Changes every 3-4 months. |
| Tools | Contains frequently changing packages. Changes every 2-3 weeks |


# Building / Installation
## Building and Testing the image

### Required software

* Docker
* Bash terminal / Powershell



## Building base.Dockerfile image
From the root repository
```bash
Expand Down Expand Up @@ -72,7 +95,7 @@ docker run --volume /path/to/CloudShell/folder/tests:/tests -it tools_cloudshell

For more information about bind mounts, please go onto the [Docker documentation](https://docs.docker.com/storage/bind-mounts/). We do expect all the test cases to pass if you would like your changes to be merged.

# Contributing
# Contribution Guidelines

## Types of issues

Expand Down

0 comments on commit 22d5b26

Please sign in to comment.