- version: 1.0.0
- Last update: Jan 2025
- Environment: Docker and Azure CLI
- Prerequisite: Access to Azure
This project shows a step-by-step guide to public a container application to Microsoft Azure Container Registry repository. I am reusing the WebSocket API MRN Python examples application (RTO with Version 2 Authentication) as an example Docker image application. However, the concept and main logic can be applied to any technologies that support containerization.
Note:
- My Azure Account is based on my Visual Studio Enterprise Subscription service which is may be different from your Azure account type.
- The Azure Portal website UI/UX are subjected to change.
Azure Container Registry is Microsoft own container hosing platform (the same as Docker's dockerhub). The repository handles private Docker/OCI - Open Container Initiative images and artifacts with a fully managed, geo-replicated instance of OCI distribution. Developers can build, store and manage containers/artifacts to connect to across Azure services such as Azure Kubernetes Service (AKS), Azure App Service and much more.
The service also lets Developers/DepOps streamline building, testing, pushing, and deploying images with Tasks. The example is developers can targeting a container registry from a continuous integration and continuous delivery (CI/CD) tool such as Azure Pipelines or Jenkin.
This project shows the first step which is how to set up an image registry, upload an application image to Azure and how to pull it to a local environment.
This project requires the following software and account on your machine.
- RTO Access credentials (Version 2 - Service ID) with MRN data permission.
- Microsoft Azure account.
- Azure CLI application.
- Docker desktop application.
- Internet connection.
Please contact your LSEG representative to help you to access the RTO account and MRN service.
Please check Azure_devdetail.md document.
That brings me to the end of this project. This project shows only step-by-step guide for the basic tasks such as set up Azure Container Registry repository, push your local application image to Azure, and pull an image back to your machine. There are more tasks that help you improve container lifecycle management like the following:
- Use the development pipelines to automate container building, testing, pushing and deploying when developers commit code to Git repository
- Scale your container registry to serve developers across regions
- Connect to other Azure services like Azure Kubernetes Service (AKS) or Azure App Service or Azure Container Apps, and much more.
You can find more information on the following Azure resources pages
- Automate container image builds and maintenance with Azure Container Registry tasks
- Azure Container Registry documentation
- List of Azure Container Services
Please note that your application image does not limit to the WebSocket API/Real-Time APIs or Machine Readable News data, any applications that support containerization can be utilized Azure Container Registry service.
For further details, please check out the following resources:
- Real-Time WebSocket API page on the LSEG Developer Community website.
- WebSocket API Quickstart page.
- MRN Data Models Implementation Guide document.
- MRN WebSocket Python example application
- Introduction to Machine Readable News with WebSocket API article.
- Machine Readable News (MRN) & N2_UBMS Comparison and Migration Guide article.
- Azure Container Registry page
- Azure Container Registry documentation
- Introduction to Azure Container Registry
- Quickstart: Create an Azure container registry using the Azure portal
- What is Azure Container Registry? blog post.
- How to install the Azure CLI.
- Automate container image builds and maintenance with Azure Container Registry tasks.
- Azure Container Registry documentation.
- List of Azure Container Services.
For any question related to this article or the LSEG APIs, please use the Developer Community Q&A Forum.