---
# System prepended metadata

title: Контейнеризация
tags: [' docker', ' lxd', ' lxc', ' k8s', cont]

---

---
title: Контейнеризация
tags: cont, docker, lxc, lxd, k8s
description: Презентация технологии контейниризации
---

# Контейнеризация

<!-- Put the link to this slide here so people can follow -->
slide: https://hackmd.io/OiLWs318TfmdI-AYTJl9jQ


## Кто я такой ? 

- Фонкач Степан devops-инженер
- Почти 10 лет работаю в эксплуатации и сфере ИТ
- В 7RL с апреля 2020 года


---



### План выступления

---
#### 1)История.Причины.
#### 2)Реализация. Следствия.
#### 3)Что ждёт?
#### Материалы и ссылки.



---

### 1)История.Причины.

---

![](https://i.imgur.com/ij69tPh.png)

---

## Content script

- Bind with each page
- Manipulate DOM
- Add event listeners
- Isolated JavaScript environment
  - It doesn't break things

---

# :fork_and_knife: 

---

<style>
code.blue {
  color: #337AB7 !important;
}
code.orange {
  color: #F7A004 !important;
}
</style>

- <code class="orange">onMessage('event')</code>: Register event listener
- <code class="blue">sendMessage('event')</code>: Trigger event

---

# :bulb: 

---

- Dead simple API
- Only cares about application logic

---

```typescript
import * as Channeru from 'channeru'

// setup channel in different page environment, once
const channel = Channeru.create()
```

---

```typescript
// in background script
const fakeLogin = async () => true

channel.answer('isLogin', async () => {
  return await fakeLogin()
})
```

<br>

```typescript
// in inject script
const isLogin = await channel.callBackground('isLogin')
console.log(isLogin) //-> true
```

---

# :100: :muscle: :tada:

---

### Wrap up

- Cross envornment commnication
- A small library to solve messaging pain
- TypeScript Rocks :tada: 

---

### Thank you! :sheep: 

You can find me on

- GitHub
- Twitter
- or email me
