From 922e831ec6f1d892c374b9b51d1e0a1ac7104289 Mon Sep 17 00:00:00 2001 From: Jason Fox Date: Tue, 4 Jun 2024 10:18:18 +0200 Subject: [PATCH] Switch to WSL --- FIWARE Entity Relationships.postman_collection.json | 2 +- README.es.md | 6 +++--- README.ja.md | 8 +++----- README.md | 9 +++++---- 4 files changed, 12 insertions(+), 13 deletions(-) diff --git a/FIWARE Entity Relationships.postman_collection.json b/FIWARE Entity Relationships.postman_collection.json index 2361ade..a40d7b3 100644 --- a/FIWARE Entity Relationships.postman_collection.json +++ b/FIWARE Entity Relationships.postman_collection.json @@ -2,7 +2,7 @@ "info": { "_postman_id": "05e4b8a2-b7fd-4689-afd4-efb71cc2f17e", "name": "FIWARE Entity Relationships", - "description": "This tutorial builds on the data created in the previous [store finder example](http://fiware.github.io/tutorials.Getting-Started/) and creates and associates a series of related data entities to create a simple stock management system.\n\nThe `docker-compose` file for this tutorial can be found on GitHub: \n\n![GitHub](https://fiware.github.io/tutorials.Entity-Relationships/icon/GitHub-Mark-32px.png) [FIWARE 102: Batch Commands and Entity Relationships](https://github.com/Fiware/tutorials.Entity-Relationships)\n\n# Data Entities\n\nWithin the FIWARE platform, an entity represents the state of a physical or conceptural object which exists in the real world.\n\n## Entities within a stock management system\n\nFor a simple stock management system, we will only need four types of entity. The relationship between our entities is defined as shown:\n\n![](https://fiware.github.io/tutorials.Entity-Relationships/img/entities.png)\n\n* A **Store** is a real world bricks and mortar building. Stores would have properties such as:\n + A name of the store e.g. \"Checkpoint Markt\"\n + An address \"Friedrichstraße 44, 10969 Kreuzberg, Berlin\"\n + A phyiscal location e.g. *52.5075 N, 13.3903 E*\n* A **Shelf** is a real world device to hold objects which we wish to sell. Each shelf would have properties such as:\n + A name of the shelf e.g. \"Wall Unit\"\n + A phyiscal location e.g. *52.5075 N, 13.3903 E*\n + A maximum capacity\n + An association to the store in which the shelf is present\n* A **Product** is defined as something that we sell - it is conceptural object. Products would have properties such as:\n + A name of the product e.g. \"Melons\"\n + A price e.g. 13.99 Euros\n + A size e.g. Small\n* An **Inventory Item** is another conceptural entity, used to assocate products, stores, shelves and physical objects. It would have properties such as:\n + An assocation to the product being sold\n + An association to the store in which the product is being sold\n + An association to the shelf where the product is being displayed\n + A stock count of the quantity of the product available in the warehouse\n + A stock count of the quantity of the product available on the shelf\n\n\nAs you can see, each of the entities defined above contain some properties which are liable to change. A product could change its price, stock could be sold and the shelf count of stock could be reduced and so on.\n\n\n# Architecture\n\nThis application will only make use of one FIWARE component - the [Orion Context Broker](https://catalogue.fiware.org/enablers/publishsubscribe-context-broker-orion-context-broker). Usage of the Orion Context Broker is sufficient for an application to qualify as *“Powered by FIWARE”*.\n\nCurrently, the Orion Context Broker relies on open source [MongoDB](https://www.mongodb.com/) technology to keep persistence of the context data it holds. Therefore, the architecture will consist of two elements:\n\n* The Orion Context Broker server which will receive requests using NGSI\n* The underlying MongoDB database associated to the Orion Context Broker server\n\nSince all interactions between the two elements are initiated by HTTP requests, the entities can be containerized and run from exposed ports. \n\n![](https://fiware.github.io/tutorials.Entity-Relationships/img/architecture.png)\n\nThe necessary configuration information can be seen in the services section of the associated `docker-compose.yml` file:\n\n```yaml\n orion:\n image: quay.io/fiware/orion:latest\n hostname: orion\n container_name: orion\n depends_on:\n - context-db\n networks:\n - default\n expose:\n - \"1026\"\n ports:\n - \"1026:1026\"\n command: -dbhost context-db -logLevel DEBUG\n```\n\n```yaml\n context-db:\n image: mongo:3.6\n hostname: context-db\n container_name: context-db\n expose:\n - \"27017\"\n ports:\n - \"27017:27017\"\n networks:\n - default\n\n```\n\nBoth containers are residing on the same network - the Orion Context Broker is listening on Port `1026` \nand MongoDB is listening on the default port `271071`. Both containers are also exposing the same ports\nexternally - this is purely for the tutorial access - so that cUrl or Postman can access them without\nbeing part of the same network. The command line initialization should be self explanatory.\n\n# Prerequisites\n\n## Docker\n\nTo keep things simple both components will be run using [Docker](https://www.docker.com). **Docker** is a container technology which allows to different components isolated into their respective environments. \n\n* To install Docker on Windows follow the instructions [here](https://docs.docker.com/docker-for-windows/)\n* To install Docker on Mac follow the instructions [here](https://docs.docker.com/docker-for-mac/)\n* To install Docker on Linux follow the instructions [here](https://docs.docker.com/install/)\n\n**Docker Compose** is a tool for defining and running multi-container Docker applications. A [YAML file](https://raw.githubusercontent.com/Fiware/tutorials.Entity-Relationships/master/docker-compose.yml) is used configure the required\nservices for the application. This means all container sevices can be brought up in a single commmand. Docker Compose is installed by default as part of Docker for Windows and Docker for Mac, however Linux users will need to follow the instructions found [here](https://docs.docker.com/compose/install/)\n\n## Cygwin \n\nWe will start up our services using a simple bash script. Windows users should download [cygwin](www.cygwin.com) to provide a command line functionality similar to a Linux distribution on Windows. \n\n\n# Start Up\n\nAll services can be initialised from the command line by running the bash script provided within the repository:\n\n```bash\n./services start\n```", + "description": "This tutorial builds on the data created in the previous [store finder example](http://fiware.github.io/tutorials.Getting-Started/) and creates and associates a series of related data entities to create a simple stock management system.\n\nThe `docker-compose` file for this tutorial can be found on GitHub: \n\n![GitHub](https://fiware.github.io/tutorials.Entity-Relationships/icon/GitHub-Mark-32px.png) [FIWARE 102: Batch Commands and Entity Relationships](https://github.com/Fiware/tutorials.Entity-Relationships)\n\n# Data Entities\n\nWithin the FIWARE platform, an entity represents the state of a physical or conceptural object which exists in the real world.\n\n## Entities within a stock management system\n\nFor a simple stock management system, we will only need four types of entity. The relationship between our entities is defined as shown:\n\n![](https://fiware.github.io/tutorials.Entity-Relationships/img/entities.png)\n\n* A **Store** is a real world bricks and mortar building. Stores would have properties such as:\n + A name of the store e.g. \"Checkpoint Markt\"\n + An address \"Friedrichstraße 44, 10969 Kreuzberg, Berlin\"\n + A phyiscal location e.g. *52.5075 N, 13.3903 E*\n* A **Shelf** is a real world device to hold objects which we wish to sell. Each shelf would have properties such as:\n + A name of the shelf e.g. \"Wall Unit\"\n + A phyiscal location e.g. *52.5075 N, 13.3903 E*\n + A maximum capacity\n + An association to the store in which the shelf is present\n* A **Product** is defined as something that we sell - it is conceptural object. Products would have properties such as:\n + A name of the product e.g. \"Melons\"\n + A price e.g. 13.99 Euros\n + A size e.g. Small\n* An **Inventory Item** is another conceptural entity, used to assocate products, stores, shelves and physical objects. It would have properties such as:\n + An assocation to the product being sold\n + An association to the store in which the product is being sold\n + An association to the shelf where the product is being displayed\n + A stock count of the quantity of the product available in the warehouse\n + A stock count of the quantity of the product available on the shelf\n\n\nAs you can see, each of the entities defined above contain some properties which are liable to change. A product could change its price, stock could be sold and the shelf count of stock could be reduced and so on.\n\n\n# Architecture\n\nThis application will only make use of one FIWARE component - the [Orion Context Broker](https://catalogue.fiware.org/enablers/publishsubscribe-context-broker-orion-context-broker). Usage of the Orion Context Broker is sufficient for an application to qualify as *“Powered by FIWARE”*.\n\nCurrently, the Orion Context Broker relies on open source [MongoDB](https://www.mongodb.com/) technology to keep persistence of the context data it holds. Therefore, the architecture will consist of two elements:\n\n* The Orion Context Broker server which will receive requests using NGSI\n* The underlying MongoDB database associated to the Orion Context Broker server\n\nSince all interactions between the two elements are initiated by HTTP requests, the entities can be containerized and run from exposed ports. \n\n![](https://fiware.github.io/tutorials.Entity-Relationships/img/architecture.png)\n\nThe necessary configuration information can be seen in the services section of the associated `docker-compose.yml` file:\n\n```yaml\n orion:\n image: quay.io/fiware/orion:latest\n hostname: orion\n container_name: orion\n depends_on:\n - context-db\n networks:\n - default\n expose:\n - \"1026\"\n ports:\n - \"1026:1026\"\n command: -dbhost context-db -logLevel DEBUG\n```\n\n```yaml\n context-db:\n image: mongo:3.6\n hostname: context-db\n container_name: context-db\n expose:\n - \"27017\"\n ports:\n - \"27017:27017\"\n networks:\n - default\n\n```\n\nBoth containers are residing on the same network - the Orion Context Broker is listening on Port `1026` \nand MongoDB is listening on the default port `271071`. Both containers are also exposing the same ports\nexternally - this is purely for the tutorial access - so that cUrl or Postman can access them without\nbeing part of the same network. The command line initialization should be self explanatory.\n\n# Prerequisites\n\n## Docker\n\nTo keep things simple both components will be run using [Docker](https://www.docker.com). **Docker** is a container technology which allows to different components isolated into their respective environments. \n\n* To install Docker on Windows follow the instructions [here](https://docs.docker.com/docker-for-windows/)\n* To install Docker on Mac follow the instructions [here](https://docs.docker.com/docker-for-mac/)\n* To install Docker on Linux follow the instructions [here](https://docs.docker.com/install/)\n\n**Docker Compose** is a tool for defining and running multi-container Docker applications. A [YAML file](https://raw.githubusercontent.com/Fiware/tutorials.Entity-Relationships/master/docker-compose.yml) is used configure the required\nservices for the application. This means all container sevices can be brought up in a single commmand. Docker Compose is installed by default as part of Docker for Windows and Docker for Mac, however Linux users will need to follow the instructions found [here](https://docs.docker.com/compose/install/)\n\n## WSL \n\nWe will start up our services using a simple bash script. Windows users should download [WSL](www.WSL.com) to provide a command line functionality similar to a Linux distribution on Windows. \n\n\n# Start Up\n\nAll services can be initialised from the command line by running the bash script provided within the repository:\n\n```bash\n./services start\n```", "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json" }, "item": [ diff --git a/README.es.md b/README.es.md index 5edd483..35fdff0 100644 --- a/README.es.md +++ b/README.es.md @@ -29,7 +29,7 @@ A lo largo de este tutorial se utilizan comandos [cUrl](https://ec.haxx.se/), pe - [Arquitectura](#arquitectura) - [Pre requisitos](#pre-requisitos) - [Docker y Docker Compose](#docker-y-docker-compose) - - [Cygwin para Windows](#cygwin-para-windows) + - [WSL para Windows](#wsl-para-windows) - [Inicio](#inicio) - [Creación y asociación de entidades de datos](#creacion-y-asociacion-de-entidades-de-datos) - [Creación de varias entidades a la vez](#creacion-de-varias-entidades-a-la-vez) @@ -163,9 +163,9 @@ docker version Por favor, asegúrese de que esté usando la versión 18.03 o superior de Docker y la versión 1.21 o superior de Docker Compose y actualice si es necesario. -## Cygwin para Windows +## WSL para Windows -Iniciaremos nuestros servicios usando un simple script de Bash. Los usuarios de Windows deben descargar [cygwin](http://www.cygwin.com/) +Iniciaremos nuestros servicios usando un simple script de Bash. Los usuarios de Windows deben descargar the [Windows Subsystem for Linux](https://learn.microsoft.com/en-us/windows/wsl/install) para proporcionar una funcionalidad de línea de comandos similar a la de una distribución de Linux en Windows. # Inicio diff --git a/README.ja.md b/README.ja.md index 7d7ca56..3a3f30c 100644 --- a/README.ja.md +++ b/README.ja.md @@ -31,7 +31,7 @@ - [アーキテクチャ](#architecture) - [前提条件](#prerequisites) - [Docker と Docker Compose](#docker-and-docker-compose) - - [Cygwin for Windows](#cygwin-for-windows) + - [WSL](#wsl) - [起動](#start-up) - [データ・エンティティの作成と関連付け](#creating-and-associating-data-entities) - [一度に複数のエンティティを作成](#creating-several-entities-at-once) @@ -210,12 +210,10 @@ docker version Docker バージョン 20.10 以降と Docker Compose 1.29 以上を使用していることを確認 し、必要に応じてアップグレードしてください。 - - -## Cygwin for Windows +## WSL シンプルな Bash スクリプトを使用してサービスを開始します。Windows ユーザは -[cygwin](http://www.cygwin.com/) をダウンロードして、Windows の Linux ディストリ +[を使用して Windows に Linux をインストールする方法](https://learn.microsoft.com/ja-jp/windows/wsl/install) をダウンロードして、Windows の Linux ディストリ ビューションに似たコマンドライン機能を提供する必要があります。 diff --git a/README.md b/README.md index 5b645d9..eca2ef6 100644 --- a/README.md +++ b/README.md @@ -34,7 +34,7 @@ The tutorial uses [cUrl](https://ec.haxx.se/) commands throughout, but is also a - [Architecture](#architecture) - [Prerequisites](#prerequisites) - [Docker and Docker Compose](#docker-and-docker-compose) - - [Cygwin for Windows](#cygwin-for-windows) + - [WSL](#wsl) - [Start Up](#start-up) - [Creating and Associating Data Entities](#creating-and-associating-data-entities) - [Creating Several Entities at Once](#creating-several-entities-at-once) @@ -187,10 +187,11 @@ docker version Please ensure that you are using Docker version 20.10 or higher and Docker Compose 1.29 or higher and upgrade if necessary. -## Cygwin for Windows +## WSL -We will start up our services using a simple Bash script. Windows users should download [cygwin](http://www.cygwin.com/) -to provide a command-line functionality similar to a Linux distribution on Windows. +We will start up our services using a simple Bash script. Windows users should download the +[Windows Subsystem for Linux](https://learn.microsoft.com/en-us/windows/wsl/install) to provide a command-line +functionality similar to a Linux distribution on Windows. # Start Up