Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Docs: Prerequisite Knowledge section #1821

Merged
merged 3 commits into from Oct 14, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
13 changes: 2 additions & 11 deletions site/content/en/docs/Overview/_index.md
Expand Up @@ -52,18 +52,9 @@ Agones incorporates these abilities:

Participation in this project comes under the {{< ghlink href="code-of-conduct.md" branch="master" >}}Contributor Covenant Code of Conduct{{< /ghlink >}}

## This all sounds great, but can you explain Docker and/or Kubernetes to me?

### Docker
- [Docker's official "Getting Started" guide](https://docs.docker.com/get-started/)
- [Katacoda's free, interactive Docker course](https://www.katacoda.com/courses/docker)

### Kubernetes
- [You should totally read this comic, and interactive tutorial](https://cloud.google.com/kubernetes-engine/kubernetes-comic/)
- [Kubernetes concepts, explained](https://kubernetes.io/docs/concepts/)
- [Katacoda's free, interactive Kubernetes course](https://www.katacoda.com/courses/kubernetes)

## What Next?
- Review our [Prerequisite Knowledge]({{% ref "/docs/Prerequisite Knowledge/_index.md" %}}). Especially if the above
sounds fantastic, but you aren't yet familiar with technology like Kubernetes or terms such as "Game Servers".
- Have a look at our [installation guides]({{< ref "/docs/Installation/_index.md" >}}), for setting up a Kubernetes cluster
and installing Agones on it.
- Go through our [Quickstart Guides]({{< ref "/docs/Getting Started/_index.md" >}}) to take you through setting up a simple game server on Agones.
80 changes: 80 additions & 0 deletions site/content/en/docs/Prerequisite Knowledge/_index.md
@@ -0,0 +1,80 @@
---
title: "Prerequisite Knowledge"
linkTitle: "Prerequisite Knowledge"
weight: 3
description: >
Foundational knowledge you should know before starting working with Agones.
---

Agones is built on top of the foundation of multiple open source projects, as well as utilising
several architectural patterns across both distributed and multiplayer game systems -- which can
make it complicated to get started with, if they are things you are not familiar with or have
experience with already.

To make getting started easier to break down and digest, this guide was written to outline what concepts and
technology that the documentation assumes that you have knowledge of, and the
depth of that knowledge, as well as providing resource to help fill those knowledge gaps.

## Docker and Containerisation

Docker and containerisation is the technological foundation of Agones, so if you aren't familiar,
we recommend you have knowledge in the following areas before getting started with Agones:

* Containers as a concept
* Running Docker containers
* Building your own container
* Registries as a concept
* Pushing and pulling containers from a registry

### Resources

The following resources are great for learning these concepts:

* [Docker Overview](https://docs.docker.com/get-started/overview/)
* [Docker "Quickstart" guide](https://docs.docker.com/get-started/)
* [Katacoda's free, interactive Docker course](https://www.katacoda.com/courses/docker)

## Kubernetes

Kubernetes builds on top of Docker to run containers at scale, on lots of machines.
If you have yet to learn about Kubernetes, we recommend that you have knowledge in the following
areas before getting started with Agones:

* Kubernetes as a concept
* Pods
* Deployments
* Services
* Creating a Deployment with a Service

### Resources

* [You should totally read this comic and interactive tutorial](https://cloud.google.com/kubernetes-engine/kubernetes-comic/)
* [Kubernetes basics](https://kubernetes.io/docs/tutorials/kubernetes-basics/)
* [Katacoda's free, interactive Kubernetes course](https://www.katacoda.com/courses/kubernetes)
* [Kubernetes concepts, explained](https://kubernetes.io/docs/concepts/)

## Dedicated Game Servers

Agones is a platform for dedicated game servers for multiplayer games. If "dedicated game servers" is a term that is not
something you are familiar with, we recommend checking out some of the resources below, before getting started with
Agones:

### Resources

* [Dedicated Game Servers, Drawn Badly (video)](https://www.youtube.com/watch?v=Nl_FIGFtYdc)
* [What Every Programmer Needs To Know About Game Networking](https://gafferongames.com/post/what_every_programmer_needs_to_know_about_game_networking/)
* [Game Server (wikipedia)](https://en.wikipedia.org/wiki/Game_server)
* {{< ghlink href="examples/simple-game-server" >}}Example simple gameserver that responds to UDP and/or
TCP commands{{< /ghlink >}}

## Game Engine

If you are building a multiplayer game, you will eventually need to understand how your
[game engine](https://en.wikipedia.org/wiki/Game_engine) will integrate with Agones.
There are multiple possible solutions, but the engines that have out of the box SDK's for Agones are:

* [Unity](https://unity.com/)
* [Unreal](https://www.unrealengine.com/)

While you can integrate other engines with Agones, if you are new to developing on a game engine, you may want to
start with the above.
7 changes: 5 additions & 2 deletions site/content/en/docs/_index.md
Expand Up @@ -13,8 +13,11 @@ Release version: {{< release-version >}}

These pages show you how to get up and running as quickly as possible in Agones.

If you are new to Agones, start with [Installation]({{< relref "./Installation/_index.md" >}}), to get Agones
up and running.
If you are new to Agones, start with [Overview]({{< relref "./Overview/_index.md" >}}) to get familiar with Agones'
features and services.

The [Installation]({{< relref "./Installation/_index.md" >}}) guide will take you through creating a Kubernetes
cluster and getting Agones installed.

The [Getting Started]({{< relref "./Getting Started/_index.md" >}}) section will have your
first `GameServer` up and running, and then have you spinning up `Fleets` after that.