Compare commits
5 Commits
ef2d40979f
...
6407e09f14
Author | SHA1 | Date | |
---|---|---|---|
6407e09f14 | |||
1ed5412af2 | |||
aa0e56c02d | |||
fd3dbc1e63 | |||
8f8d6981e8 |
@ -9,6 +9,7 @@
|
||||
- **`docker ps --format "{{.Names}}"`** - только имена контейнеров
|
||||
|
||||
- `docker ps -s` - показать размеры контейнеров (`-l` - последний запущенный контейнер)
|
||||
- `docker logs -f --tail 100 my_app` - смотреть последние 100 строк и дальше в реальном времени
|
||||
- `docker history <image_name>` - история создания образа (`--no-trunc` - не обрезать вывод)
|
||||
- `docker volume ls` - список всех Docker томов на хосте
|
||||
- `docker volume inspect <volume_name>` - информацию о конкретном docker томе, например, его местоположение, размер и настройки и тп
|
||||
|
@ -876,99 +876,6 @@ type: CharDevice # Символьное устройство
|
||||
type: BlockDevice # Блочное устройство
|
||||
```
|
||||
|
||||
#### downwardAPI
|
||||
|
||||
`downwardAPI` позволяет передать метаданные `Pod'а`(например, имя пода, namespace, labels, annotations, ресурсы) в контейнер через переменные окружения или файлы.
|
||||
|
||||
- Пример (как том (файлы))
|
||||
```yaml
|
||||
volumeMounts:
|
||||
- mountPath: "/etc/pod-info"
|
||||
name: pod-info
|
||||
readOnly: true
|
||||
volumes:
|
||||
- name: pod-info
|
||||
downwardAPI:
|
||||
items:
|
||||
- path: limit-cpu-millicores
|
||||
resourceFieldRef:
|
||||
containerName: openresty
|
||||
resource: limits.cpu
|
||||
divisor: 1m
|
||||
- path: limit-memory-kibibytes
|
||||
resourceFieldRef:
|
||||
containerName: openresty
|
||||
resource: limits.memory
|
||||
divisor: 1Ki
|
||||
- path: labels
|
||||
fieldRef:
|
||||
fieldPath: metadata.labels
|
||||
```
|
||||
|
||||
- Пример (как переменные окружения)
|
||||
```yaml
|
||||
env:
|
||||
- name: MY_POD_NAME
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.name
|
||||
|
||||
- name: MY_CPU_LIMIT
|
||||
valueFrom:
|
||||
resourceFieldRef:
|
||||
resource: limits.cpu
|
||||
```
|
||||
|
||||
#### projected
|
||||
|
||||
`projected` - это том, который объединяет несколько источников данных в одну директорию
|
||||
|
||||
- `secret`
|
||||
- `configMap`
|
||||
- `downwardAPI`
|
||||
- `serviceAccountToken`
|
||||
|
||||
- Пример
|
||||
```yaml
|
||||
volumeMounts:
|
||||
- mountPath: "/etc/pod-data"
|
||||
name: all-values
|
||||
readOnly: true
|
||||
volumes:
|
||||
- name: all-values
|
||||
projected:
|
||||
sources:
|
||||
- downwardAPI:
|
||||
items:
|
||||
- path: limits/cpu-millicore
|
||||
resourceFieldRef:
|
||||
containerName: openresty
|
||||
resource: limits.cpu
|
||||
divisor: 1m
|
||||
- path: limits/memory-kibibytes
|
||||
resourceFieldRef:
|
||||
containerName: openresty
|
||||
resource: limits.memory
|
||||
divisor: 1Ki
|
||||
- path: labels
|
||||
fieldRef:
|
||||
fieldPath: metadata.labels
|
||||
- secret:
|
||||
name: user-password-secret
|
||||
items:
|
||||
- key: user
|
||||
path: secret/user
|
||||
- key: password
|
||||
path: secret/password
|
||||
- configMap:
|
||||
name: example-txt
|
||||
items:
|
||||
- key: example.txt
|
||||
path: configs/example.txt
|
||||
- key: config.yaml
|
||||
path: configs/config.yaml
|
||||
```
|
||||
|
||||
#### ConfigMap
|
||||
|
||||
ConfigMap - сущность, предназначенная для хранения нечувствительных данных конфигурации в виде пар ключ: значение, позволяет отделить конфигурацию от кода и применять её к контейнерам без необходимости пересборки образа.
|
||||
@ -1109,6 +1016,101 @@ cat /etc/secret/username # выведет: user
|
||||
cat /etc/secret/password # выведет: password
|
||||
```
|
||||
|
||||
#### downwardAPI
|
||||
|
||||
`downwardAPI` позволяет передать метаданные `Pod'а`(например, имя пода, namespace, labels, annotations, ресурсы) в контейнер через переменные окружения или файлы.
|
||||
|
||||
- Пример (как том (файлы))
|
||||
```yaml
|
||||
volumeMounts:
|
||||
- mountPath: "/etc/pod-info"
|
||||
name: pod-info
|
||||
readOnly: true
|
||||
volumes:
|
||||
- name: pod-info
|
||||
downwardAPI:
|
||||
items:
|
||||
- path: limit-cpu-millicores
|
||||
resourceFieldRef:
|
||||
containerName: openresty
|
||||
resource: limits.cpu
|
||||
divisor: 1m
|
||||
- path: limit-memory-kibibytes
|
||||
resourceFieldRef:
|
||||
containerName: openresty
|
||||
resource: limits.memory
|
||||
divisor: 1Ki
|
||||
- path: labels
|
||||
fieldRef:
|
||||
fieldPath: metadata.labels
|
||||
```
|
||||
|
||||
- Пример (как переменные окружения)
|
||||
```yaml
|
||||
env:
|
||||
- name: MY_POD_NAME
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.name
|
||||
|
||||
- name: MY_CPU_LIMIT
|
||||
valueFrom:
|
||||
resourceFieldRef:
|
||||
resource: limits.cpu
|
||||
```
|
||||
|
||||
#### projected
|
||||
|
||||
`projected` - это том, который объединяет несколько источников данных в одну директорию
|
||||
|
||||
- `secret`
|
||||
- `configMap`
|
||||
- `downwardAPI`
|
||||
- `serviceAccountToken`
|
||||
|
||||
- Пример
|
||||
```yaml
|
||||
volumeMounts:
|
||||
- mountPath: "/etc/pod-data"
|
||||
name: all-values
|
||||
readOnly: true
|
||||
volumes:
|
||||
- name: all-values
|
||||
projected:
|
||||
sources:
|
||||
- downwardAPI:
|
||||
items:
|
||||
- path: limits/cpu-millicore
|
||||
resourceFieldRef:
|
||||
containerName: openresty
|
||||
resource: limits.cpu
|
||||
divisor: 1m
|
||||
- path: limits/memory-kibibytes
|
||||
resourceFieldRef:
|
||||
containerName: openresty
|
||||
resource: limits.memory
|
||||
divisor: 1Ki
|
||||
- path: labels
|
||||
fieldRef:
|
||||
fieldPath: metadata.labels
|
||||
- secret:
|
||||
name: user-password-secret
|
||||
items:
|
||||
- key: user
|
||||
path: secret/user
|
||||
- key: password
|
||||
path: secret/password
|
||||
- configMap:
|
||||
name: example-txt
|
||||
items:
|
||||
- key: example.txt
|
||||
path: configs/example.txt
|
||||
- key: config.yaml
|
||||
path: configs/config.yaml
|
||||
```
|
||||
|
||||
|
||||
|
||||
### PV, PVC
|
||||
|
||||
- `k get pv`
|
||||
|
@ -357,3 +357,54 @@ getcap /usr/local/bin/blackbox_exporter
|
||||
```bash
|
||||
setcap cap_net_raw+ep /usr/local/bin/blackbox_exporter
|
||||
```
|
||||
|
||||
### Процесс загрузки ОС
|
||||
|
||||
Кратко
|
||||
|
||||
- Сначала UEFI инициализирует железо (память, CPU, устройства) и запускает загрузчик из EFI-раздела.
|
||||
- Загрузчик (например, GRUB) загружает ядро Linux и initramfs, передаёт ядру параметры командной строки.
|
||||
- Ядро запускается, инициализирует память, CPU, драйверы, затем монтирует initramfs как временную файловую систему.
|
||||
- Initramfs выполняет скрипты, необходимые для обнаружения и монтирования основной root ФС, расшифровки и подключения томов.
|
||||
- Initramfs передаёт управление настоящему init-процессу (чаще всего systemd).
|
||||
- Systemd инициализирует всё окружение (сети, файловые системы, службы) через таргеты и сервисы.
|
||||
- Запускается пользовательское пространство — getty или display manager, затем пользователь входит и загружаются .bashrc, systemd user-юниты и прочее.
|
||||
|
||||
### Символы в Bash
|
||||
|
||||
- `;` - завершение команды
|
||||
- `&` - фоновый запуск
|
||||
- `&&` - и выполнить, если предыдущее успешно
|
||||
- `\n` - новая строка, внутри кавычек (`echo -e "line1\nline2"`)
|
||||
- `одинарные кавычки` - никак не интерпретируются, литеральное значение
|
||||
- `двойные кавычки` - интерпретация переменной
|
||||
|
||||
---
|
||||
|
||||
- `$(...)` - синтаксис подстановки команды
|
||||
- `$VAR`, `${VAR:-default}` - значение переменной с модификатором
|
||||
- `$$` - PID текущего скрипта
|
||||
- `$?` - код выхода последней команды
|
||||
- `$#` - кол-во аргументов скрипта
|
||||
- `$@`, `$*` - все аргументы скрипта
|
||||
- `$n` - n-ый аргумент скрипта
|
||||
|
||||
---
|
||||
|
||||
- `[[]]` - расширенный аналог `[]`
|
||||
- `(())` - для арифмитических выражений
|
||||
- `-eq, -ne, -gt, -lt` - числовые сравнения
|
||||
- `==, !=` - строковые сравнения
|
||||
- `&>` - stdout и stderr в файл
|
||||
|
||||
---
|
||||
|
||||
- `{}` - команды выполняются в текущем shell
|
||||
- `()` - команды выполняются в subshell
|
||||
|
||||
---
|
||||
|
||||
- `*` - любая последовательность (rm *.log)
|
||||
- `?` - один любой символ (ls file?.txt)
|
||||
- `[abc]` - один символ из набора (ls file[12].txt)
|
||||
- `[!abc]` - один символ не из набора (ls file[!3].txt)
|
@ -35,4 +35,11 @@
|
||||
#### Панель управления
|
||||
|
||||
- `Win+R`
|
||||
- `control`
|
||||
- `control`
|
||||
|
||||
#### Как подключиться по RDP
|
||||
|
||||
- `Win+R`
|
||||
- `cmd`
|
||||
- `mstsc /admin`
|
||||
- ввести креды для подключения
|
||||
|
Loading…
x
Reference in New Issue
Block a user