Обновлен docker, добавлено: dd, fdisk, ip

This commit is contained in:
Alexander Zhirov 2022-06-03 11:17:47 +03:00
parent 2ce7f0cef5
commit e9eb2c71fd
6 changed files with 110 additions and 5 deletions

View File

@ -12,4 +12,6 @@
- [Работа с архивами](src/archives.md)
- [systemd](src/systemd.md)
- [Подключение к удалённому рабочему столу (x11vnc)](src/x11vnc.md)
- [Работа с мониторами (xrandr)](src/xrandr.md)
- [Работа с мониторами (xrandr)](src/xrandr.md)
- [Управления разделами жёсткого диска (fdisk)](src/fdisk.md)
- [Копирование двоичных данных (dd)](src/dd.md)

14
linux/src/dd.md Normal file
View File

@ -0,0 +1,14 @@
# Копирование двоичных данных (dd)
Создание образа диска в формате `ISO`:
```sh
dd if=/dev/sr0 of=~/disk.iso bs=2048 conv=noerror
```
где
- `if` (input file) - входной файл (источник копирования), где `/dev/sr0` - устройство для CD/DVD дисков
- `of` (output file) - выходной файл (место назначения), где `~/disk.iso` - имя файла, который расположен в домашней директории пользователя
- `bs` - количество байт, которое читается и записывается за один раз (размер буфера), где `2048` = 2 Кб.
- `conv` - применяемый [фильтр](https://www.man7.org/linux/man-pages/man1/dd.1.html), где `noerror` продолжает копирование после возникающих ошибок чтения

13
linux/src/fdisk.md Normal file
View File

@ -0,0 +1,13 @@
# Управления разделами жёсткого диска (fdisk)
Вывести список всех разделов всех подключенных устройств:
```sh
fdisk -l
```
Вывести список разделов конкретного устройства, например `/dev/sdb`:
```sh
fdisk -l /dev/sdb
```

8
linux/src/ip.md Normal file
View File

@ -0,0 +1,8 @@
```sh
ip route del default
```
```sh
ip route add default via 192.168.100.1
```

View File

@ -119,4 +119,15 @@ systemctl --user enable myprogram.service
systemctl --no-block --user start xsession.target
```
После чего сервис `myprogram.service` будет автоматически запускаться после входа пользователя в систему.
После чего сервис `myprogram.service` будет автоматически запускаться после входа пользователя в систему.
## Просмотр журнала
```sh
journalctl -b -u docker
```
где
- `-b` - показать сообщения с момента последней (текущей) загрузки системы
- `-u` - показать журнал с указанного сервиса (`docker`)

View File

@ -1,12 +1,14 @@
# Docker
## Работа с `image`, `container`, `volume` и `network`
Удаление всех `image`, `container`, `volume`, `network`:
```sh
docker system prune -a
```
## image
### image
Список загруженных `image`:
@ -32,7 +34,47 @@ docker rmi image image
docker rmi $(docker images -a -q)
```
## container
Выгрузка `image` в файл:
```sh
docker save repository:tag | gzip > image.tar.gz
```
или
```sh
docker save -o image.tar repository:tag
```
или
```sh
docker save image > image.tar
```
где
- `repository:tag` - образ выгружаемого `image`
Например:
```sh
docker save nginx:alpine | gzip > nginx_alpine.tar.gz
```
Загрузка `image` из файла:
```sh
docker load < image.tar.gz
```
или
```sh
docker load --input image.tar
```
### container
Список контейнеров:
@ -59,7 +101,22 @@ docker stop $(docker ps -a -q)
docker rm $(docker ps -a -q)
```
## volume
Запуск контейнера:
```sh
docker run --restart always --name mynginx -p 8080:80 -d nginx:alpine
```
где
- `run` - [запуск контейнера](https://docs.docker.com/engine/reference/commandline/container_run/)
- `--restart` - **всегда** (`always`) [стартовать автоматически](https://docs.docker.com/config/containers/start-containers-automatically/) контейнер после запуска `docker`
- `--name` - установить имя (`mynginx`) контейнера
- `-p` - [пробросить](https://docs.docker.com/config/containers/container-networking/) порт `80` из контейнера в хост порт `8080`
- `-d` - запустить контейнер в фоновом режиме (*detached mode*)
- `nginx:alpine` - имя образа `image`, на основе которого запускается контейнер
### volume
Список `volume`: