Document Windows options
This commit is contained in:
		
							
								
								
									
										42
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										42
									
								
								README.md
									
									
									
									
									
								
							@@ -1,10 +1,19 @@
 | 
				
			|||||||
Example Voting App
 | 
					Example Voting App
 | 
				
			||||||
=========
 | 
					=========
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					A simple distributed application running across multiple Docker containers.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Getting started
 | 
					Getting started
 | 
				
			||||||
---------------
 | 
					---------------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Download [Docker](https://www.docker.com/products/overview). If you are on Mac or Windows, [Docker Compose](https://docs.docker.com/compose) will be automatically installed. On Linux, make sure you have the latest version of [Compose](https://docs.docker.com/compose/install/). If you're using [Docker for Windows](https://docs.docker.com/docker-for-windows/) on Windows 10 pro or later, you must also [switch to Linux containers](https://docs.docker.com/docker-for-windows/#switch-between-windows-and-linux-containers).
 | 
					Download [Docker Desktop](https://www.docker.com/products/docker-desktop) for Mac or Windows. [Docker Compose](https://docs.docker.com/compose) will be automatically installed. On Linux, make sure you have the latest version of [Compose](https://docs.docker.com/compose/install/). 
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Linux Containers
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The Linux stack uses Python, Node.js, .NET Core (or optionally Java), with Redis for messaging and Postgres for storage.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					> If you're using [Docker Desktop on Windows](https://store.docker.com/editions/community/docker-ce-desktop-windows), you can run the Linux version by [switching to Linux containers](https://docs.docker.com/docker-for-windows/#switch-between-windows-and-linux-containers), or run the Windows containers version.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Run in this directory:
 | 
					Run in this directory:
 | 
				
			||||||
```
 | 
					```
 | 
				
			||||||
@@ -21,6 +30,27 @@ Once you have your swarm, in this directory run:
 | 
				
			|||||||
docker stack deploy --compose-file docker-stack.yml vote
 | 
					docker stack deploy --compose-file docker-stack.yml vote
 | 
				
			||||||
```
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Windows Containers
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					An alternative version of the app uses Windows containers based on Nano Server. This stack runs on .NET Core, using [NATS](https://nats.io) for messaging and [TiDB](https://github.com/pingcap/tidb) for storage.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					You can build from source using:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
 | 
					docker-compose -f docker-compose-windows.yml build
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Then run the app using:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
 | 
					docker-compose -f docker-compose-windows.yml up -d
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					> Or in a Windows swarm, run `docker stack deploy -c docker-stack-windows.yml vote`
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The app will be running at [http://localhost:5000](http://localhost:5000), and the results will be at [http://localhost:5001](http://localhost:5001).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Run the app in Kubernetes
 | 
					Run the app in Kubernetes
 | 
				
			||||||
-------------------------
 | 
					-------------------------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -47,11 +77,11 @@ Architecture
 | 
				
			|||||||
 | 
					
 | 
				
			||||||

 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
* A Python webapp which lets you vote between two options
 | 
					* A front-end web app in [Python](/vote) or [ASP.NET Core](/vote/dotnet) which lets you vote between two options
 | 
				
			||||||
* A Redis queue which collects new votes
 | 
					* A [Redis](https://hub.docker.com/_/redis/) or [NATS](https://hub.docker.com/_/nats/) queue which collects new votes
 | 
				
			||||||
* A .NET worker which consumes votes and stores them in…
 | 
					* A [.NET Core](/worker/src/Worker), [Java](/worker/src/main) or [.NET Core 2.1](/worker/dotnet) worker which consumes votes and stores them in…
 | 
				
			||||||
* A Postgres database backed by a Docker volume
 | 
					* A [Postgres](https://hub.docker.com/_/postgres/) or [TiDB](https://hub.docker.com/r/dockersamples/tidb/tags/) database backed by a Docker volume
 | 
				
			||||||
* A Node.js webapp which shows the results of the voting in real time
 | 
					* A [Node.js](/result) or [ASP.NET Core SignalR](/result/dotnet) webapp which shows the results of the voting in real time
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Note
 | 
					Note
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user