Skip to content

Commit

Permalink
Merge pull request #130 from ShootingStar91/master
Browse files Browse the repository at this point in the history
Update part 0 due to changed grading & add instructions how to use local images
  • Loading branch information
mluukkai authored Jun 8, 2024
2 parents 6c19e6d + 010e460 commit f5e55f9
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 18 deletions.
29 changes: 12 additions & 17 deletions data/part-0/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,30 +11,16 @@ Attendees are expected to have completed [DevOps with Docker](https://devopswith

### Course material ###

The course material is meant to be read part by part from start to finish. To get a passing grade, you have to do every exercise. The material contains exercises, which are placed so that the preceding material provides enough information for solving each exercise. Do the exercises as you go through the material. As you progress further, you will be increasingly searching for information on the internet. You should also supplement your knowledge with the [official documentation](https://kubernetes.io/docs/home/)!
The course material is meant to be read part by part from start to finish. The material contains exercises, which are placed so that the preceding material provides enough information for solving each exercise. Do the exercises as you go through the material. As you progress further, you will be increasingly searching for information on the internet. You should also supplement your knowledge with the [official documentation](https://kubernetes.io/docs/home/)!

The course material is written using Mac, so some instructions may lack platform-specific details. Please make a pull request to the course material in case you find any mistakes or wish to add something. You can also add an issue through GitHub if you find any problems with the course material.

## Completing course ##
## Completion and grading ##

To complete the course, submit solutions for all of the exercises in parts 1-5. There is no exam.
To complete the course, complete exercises in parts 1-5.

The total workload of the course is about 100 hours depending on your background.

### Exercises ###

Complete all of the exercises to receive a passing grade.

Make a repository on GitHub and publish your solutions in clearly ordered files/folders. If you need help using Git, you should refer to their [guide](https://guides.github.com/activities/hello-world/). Make sure that the repository is available to me. We prefer public repositories, but if you want to keep your experience secret, you can create a private repository and add [Jakousa](https://github.com/Jakousa) as a collaborator.

Most of the exercises will require you to write code or publish something to Docker Hub. If you are unsure what to submit, you can ask for help in the course chat.

A system for detecting plagiarism is used to check exercises submitted to GitHub. If multiple students hand in the same code, the issue is handled according to the [policy on plagiarism](https://studies.helsinki.fi/instructions/article/what-cheating-and-plagiarism) of the University of Helsinki.

There are multiple exercises in each part. After you have completed **all** of the exercises for a part, use the [submission system](https://studies.cs.helsinki.fi/stats/courses/kubernetes2024). Note that you can **not** edit a submission, so mark all as completed.

### Grading ###

Course size is 5 ECTS credits. The course has a total of 48 exercises, grade will depend on the number of submitted exercises:

| grade | exercises |
Expand All @@ -45,6 +31,15 @@ Course size is 5 ECTS credits. The course has a total of 48 exercises, grade wil
| 2 | 32 |
| 1 | 27 |

### Exercises ###

Make a repository on GitHub and publish your solutions in clearly ordered files/folders. If you need help using Git, you should refer to their [guide](https://guides.github.com/activities/hello-world/). Make sure that the repository is available to me. We prefer public repositories, but if you want to keep your experience secret, you can create a private repository and add [Jakousa](https://github.com/Jakousa) as a collaborator.

Most of the exercises will require you to write code or publish something to Docker Hub. If you are unsure what to submit, you can ask for help in the course chat.

A system for detecting plagiarism is used to check exercises submitted to GitHub. If multiple students hand in the same code, the issue is handled according to the [policy on plagiarism](https://studies.helsinki.fi/instructions/article/what-cheating-and-plagiarism) of the University of Helsinki.

There are multiple exercises in each part. After completing a part, use the [submission system](https://studies.cs.helsinki.fi/stats/courses/kubernetes2024). Note that you can **not** edit a submission afterwards, so think ahead how many exercises you wish to complete for each part.

## Google Cloud Credits ##

Expand Down
4 changes: 3 additions & 1 deletion data/part-1/1-first-deploy.md
Original file line number Diff line number Diff line change
Expand Up @@ -147,7 +147,9 @@ Let's launch an application that generates and outputs a hash every 5 seconds or

I have prepared one [here](https://github.com/kubernetes-hy/material-example/tree/master/app1), you can test it with `docker run jakousa/dwk-app1`.

To deploy an image, we need the cluster to have access to the image. By default, Kubernetes is intended to be used with a registry. K3d offers `import-images` command, but that won't work when we switch to non-k3d solutions. We will use the familiar registry _Docker Hub_, which we also used in [DevOps with Docker](http://devopswithdocker.com/). If you've never used Docker Hub, it is the place where the Docker client defaults to. E.g. when you run `docker pull nginx`, the nginx image comes from Docker Hub. See the course [DevOps for Docker](https://devopswithdocker.com/) for further details e.g. on pushing your images to Docker Hub if needed.
To deploy an image, we need the cluster to have access to the image. By default, Kubernetes is intended to be used with a registry. We will use the familiar registry _Docker Hub_, which we also used in [DevOps with Docker](http://devopswithdocker.com/). If you've never used Docker Hub, it is the place where the Docker client defaults to. E.g. when you run `docker pull nginx`, the nginx image comes from Docker Hub. See the course [DevOps for Docker](https://devopswithdocker.com/) for further details e.g. on pushing your images to Docker Hub if needed.

It is also possible to use local images with k3d, but that won't work with non-k3d solutions. If you want to try using local images, use `k3d image import <image-name>`. Then you must edit the deployment's [imagePullPolicy](https://kubernetes.io/docs/concepts/containers/images/#image-pull-policy) from the default `Always` to `IfNotPresent` or `Never` to allow the local image to be used. The deployment can be edited after creation with `kubectl edit deployment <deployment-name>`.

<text-box name="Example applications" variant="hint">
In the future, the material will use the offered applications in the commands. You may follow along by changing the image to your application. Almost everything is found in the same repository <a href="https://github.com/kubernetes-hy/material-example">https://github.com/kubernetes-hy/material-example</a>.
Expand Down

0 comments on commit f5e55f9

Please sign in to comment.