-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.Rmd
More file actions
73 lines (48 loc) · 2.42 KB
/
index.Rmd
File metadata and controls
73 lines (48 loc) · 2.42 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
---
title: "Operations and maintenance"
author: "KTH Library & ITA - 'ÅBU' project"
date: "2020-01-20"
output:
ioslides_presentation:
logo: kth-logo.png
transition: slower
self-contained: true
---
##
{.width=600px}
## Delivery components
Containers - "units" that can be bundled together into "systems".
- Binaries - Package a solution as (bundle of) units (Docker + Docker Hub)
- Versions - latest or pinned version (dev, ref, prod)?
## Procedures / routines
.. for Operations, Maintenance, Troubleshooting
- [Updates to data](https://gita.sys.kth.se/kthb/kontarion-bundle#development) (bundled data, caches)
- [Steps for deploying updates to components](https://gita.sys.kth.se/kthb/kontarion-bundle#updating-public-data)
- [Troubleshooting incidents and using logs](https://gita.sys.kth.se/kthb/kontarion-bundle#troubleshooting)
- [FAQs and recipes](https://gita.sys.kth.se/kthb/kontarion-bundle#faqs)
- [Load testing](https://gita.sys.kth.se/kthb/kontarion-bundle/tree/master/shinyload)
- Monitoring
- Usage reporting
## Existing documentation
Described at <https://KTH-Library.github.io>
- Overview at https://kth-library.github.io/ - maintained [here](https://github.com/KTH-Library/KTH-Library.github.io)
- Components:
- R-package: https://github.com/KTH-Library/bibliomatrix
- R-package: https://github.com/KTH-Library/ktheme
- Container: https://github.com/KTH-Library/kontarion
- Bundle: https://gita.sys.kth.se/kthb/kontarion-bundle
# "Hello Docker + Docker-Compose"
## Docker and Compose
Preparations: get `docker`, `docker-compose` and `make`
For Mac and Windows users those are provided in "Docker for Desktop":
- https://docs.docker.com/docker-for-windows/
- https://docs.docker.com/docker-for-mac/
## Exercise
Create a `docker-compose.yml` file that starts a database and client service
- Look at official images for postgres, mariadb/mysql, mssql at https://hub.docker.com
- Pre-load data ([Hint](https://stackoverflow.com/questions/29600369/starting-and-populating-a-postgres-container-in-docker#answer-36532635))
- Bonus: Connect from your host computer (Hint: How to open the port?) and from another container
## Solution
Please find the following suggestions for solution:
- [`docker-compose.yml`](docker-compose.yml) file w postgres, mariadb, mssql services and pgloader migration tool
- [`Makefile`](Makefile) w actions/targets for migrating data from SQLite3 to postgres etc