Skip to content

Commit

Permalink
exercise-2: docker troubleshooting (#196)
Browse files Browse the repository at this point in the history
Description of exercise-2.
The idea of this exercise is to teach some docker related things, and have students trouble-shoot it.
  • Loading branch information
nahratzah authored Apr 26, 2024
1 parent 174af13 commit 6d7b124
Showing 1 changed file with 22 additions and 1 deletion.
23 changes: 22 additions & 1 deletion website/content/workbooks/workbook-8.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,28 @@ weight=3
- [ ] [Batch processing](../../projects/batch-processing)
- [ ] [Buggy app](../../projects/buggy-app)
- [ ] [Memcached Clusters](../../projects/memcached-clusters)
- [ ] [Troubleshooting project #2](https://docs.google.com/document/d/1V6HEu_OcJ3MHH-aHzUfANf06VJa1rPcGHcpBwql7QLA/edit#heading=h.cjnguaxmynan) TOADD
- [ ] Troubleshooting project #2
- This project is designed to get you familiar with docker.
- To log in: `ssh -i </path/to/the/ssh-private-key> <username>@<IP>`
- You have sudo access on the host, please give a shout if that doesn't work. (You'll need it.)
- There's a database (mysql) on the machine. If you have a mysql client, you can use `--host=127.0.0.1 --port=3306 --user=root --password` to log in.
(Ask any of the instructors for the password.)
- The goal of the exercise is:
- when you run `lynx -dump http://localhost/`, you will see a cute image of a cat on your terminal.
This shouldn't take more than a day or 2.
- secondary, once you've reached that, we'll ask you to hide the password that you can see in `ps auxww | grep miauw`.
(A password visible in `ps` is bad for security, so we want that to be somewhat hidden.)
- Along the way, we expect you'll be able to answer:
- How is systemd configured? Where are the logs?
- Can you describe what docker does?
- Can you describe the two ways that docker volumes are used in this setup?
- Docker uses images. What are images? And how do you create your own?
- Some knowledge to get you started:
- The webserver is called `httpurr`, with a corresponding systemd service (`httpurr`).
It's written in go, and you can see the source code in `/httpurr/`.
- The database is mysql, with a corresponding systemd service (`httpurr-db`).
- Both are run inside docker.
- While doing this exercise, I would recommend logging what you do.

## Product

Expand Down

0 comments on commit 6d7b124

Please sign in to comment.