Категория Docker

Адресация локальных сетей

Адреса локальной сети

Рекомендуется использовать одинаковые диапазоны IP адресов для Docker, LXC, VirtualBox и т.п.

10.0.0.0/8 WAN, VPN сети, Docker swarm dynamic networks 192.168.0.0/16 Домашняя или офисная сеть 172.17.0.1/16
172.18.0.1/16 Docker network 172.20.0.1/16 Docker static containers network 172.21.0.1/16 Cloud OS router overlay network for Docker Swarm

Запуск Tarantool в Docker контейнере

Создайте сеть:

docker network create -d bridge --subnet=172.20.0.0/16 dockernet -o "com.docker.network.bridge.name"="dockernet"

Создайте volume

docker volume create tarantool_data

Запустите tarantool

docker run --name tarantool -d --restart=unless-stopped --log-driver=journald --ip=172.20.0.10 --network="dockernet" -v tarantool_data:/var/lib/tarantool tarantool/tarantool:2

Параметры —restart:
unless-stopped — будет останавливаться при перезапуске системы
always

Установка Docker на Centos 7

Чтобы установить Docker на Centos 7 добавьте репозиторий:

yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

Импортируйте ключ GPG:

rpm --import https://download.docker.com/linux/centos/gpg

Установите Docker:

yum install docker-ce docker-ce-cli containerd.io

Для хранения логов рекомендуется journald. В файле /etc/docker/daemon.json пропишите:

{ "log-driver": "journald" }

Также следует ограничить максимальный размер

Запуск PostgresSQL в Docker

Cоздайте сеть, в которой будет находится СУБД PostgreSQL со статическим IP адресом.

docker network create -d bridge --subnet=172.20.0.0/16 dockernet -o "com.docker.network.bridge.name"="dockernet"

Создание хранилища для базы данных.

docker volume create postgres_data

Запуск контейнера PostgreSQL

docker run -d -e POSTGRES_PASSWORD=root --log-driver=journald --name postgres --restart=unless-stopped -v postgres_data:/var/lib/postgresql/data

Запуск MariaDB через Docker

Иногда требуется запустить СУБД MariaDB на сервере. Ниже описана инструкция, как запустить MariaDB через Docker.

Для начала создайте сеть, в которой будет находится СУБД Mysql со статическим IP адресом. Сеть нужно создать, т.к. стандартная сеть docker не дает возможности установить статический IP адрес у контейнера.

docker

Docker в LXC

Запуск Docker в LXC

Иногда требуется запустить docker в lxc, например, для установки Docker Swarm на локальную машину, или для установки Kubernetos. LXC позволяет запускать Docker внутри контейнера. Рекомендуется использовать хост машину Ubuntu 18.04.

Прежде чем начать, установите LXC на Ubuntu по инструкции и обновите