Различия
Показаны различия между двумя версиями страницы.
| Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
| system:docker [2018/06/25 23:58] – [Подсоеденение к контейнеру] mirocow | system:docker [2026/01/12 20:37] (текущий) – 192.168.1.159 | ||
|---|---|---|---|
| Строка 1: | Строка 1: | ||
| - | {{tag> | + | {{tag> |
| ====== Docker ====== | ====== Docker ====== | ||
| Строка 5: | Строка 5: | ||
| {{https:// | {{https:// | ||
| - | | VIRTUAL MACHINES | ||
| - | | {{https:// | ||
| - | | Virtual machines include the application, | ||
| - | ===== Установка ===== | + | ====== Установка |
| - | * https:// | + | ===== Ubuntu |
| - | * https:// | + | |
| - | * https:// | + | |
| - | + | ||
| - | nano / | + | |
| - | < | + | |
| - | deb https:// | + | |
| - | </ | + | |
| - | + | ||
| - | ===== Использование | + | |
| - | + | ||
| - | ==== Работа с образами / Images ==== | + | |
| - | + | ||
| - | + | ||
| - | <note tip> | + | |
| - | $ docker image | + | |
| - | </ | + | |
| - | + | ||
| - | === Вывести список образов | + | |
| <code bash> | <code bash> | ||
| - | $ docker | + | $ apt update && \ |
| - | REPOSITORY | + | apt install ca-certificates curl gnupg lsb-release -y && \ |
| - | yii2_php | + | mkdir -p / |
| + | curl -fsSL https:// | ||
| + | echo "deb [arch=$(dpkg --print-architecture) signed-by=/ | ||
| + | apt update && \ | ||
| + | apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin -y | ||
| </ | </ | ||
| - | === Удалить образ | + | ===== Debian ===== |
| <code bash> | <code bash> | ||
| - | $ docker | + | $ apt update && \ |
| + | apt install ca-certificates curl gnupg lsb-release -y && \ | ||
| + | mkdir -p / | ||
| + | curl -fsSL https:// | ||
| + | echo "deb [arch=$(dpkg --print-architecture) signed-by=/ | ||
| + | apt update && \ | ||
| + | apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y | ||
| </ | </ | ||
| - | === Анализировать образ | + | ====== Docker ====== |
| <code bash> | <code bash> | ||
| - | $ docker | + | $ sudo groupadd |
| - | [ | + | $ sudo usermod -aG docker $USER |
| - | { | + | $ newgrp docker |
| - | " | + | |
| - | " | + | |
| - | " | + | |
| - | ], | + | |
| - | " | + | |
| - | " | + | |
| - | ... | + | |
| - | } | + | |
| </ | </ | ||
| - | === Избавляемся от неиспользуемых образов | + | ====== |
| - | + | ||
| - | <code bash>$ docker image prune</ | + | |
| - | + | ||
| - | === Список образов | + | |
| - | + | ||
| - | <note tip> | + | |
| + | Если Docker Swarm создается | ||
| <code bash> | <code bash> | ||
| - | $ docker | + | $ docker |
| - | REPOSITORY | + | # В вответ docker swarm join --token SWMTKN-1-54k2k418tw2j0juwm3inq6crp4ow6xogswihcc5azg7oq5qo7e-a3rfeyfwo7d93heq0y5vhyzod 172.31.245.104: |
| - | yii2_php | + | # Эту команду необходимо будет выполнить на каждой присоединяймой ноде |
| - | yii2_nginx | + | |
| - | yii2_kibana | + | |
| - | yii2_elasticsearch | + | |
| - | yii2_redis | + | |
| - | yii2_mariadb | + | |
| </ | </ | ||
| - | ==== Работа | + | Если необходимо присоеденить |
| - | + | ||
| - | <note tip>Для справки \\ <code bash>$ docker</ | + | |
| - | + | ||
| - | === Запуск контейнера === | + | |
| - | + | ||
| - | <note tip>Необходим | + | |
| - | + | ||
| - | <code bash>$ docker up</ | + | |
| - | + | ||
| - | === Список | + | |
| <code bash> | <code bash> | ||
| - | $ docker | + | $ docker |
| - | CONTAINER ID IMAGE COMMAND | + | # В вответ docker swarm join --token SWMTKN-1-54k2k418tw2j0juwm3inq6crp4ow6xogswihcc5azg7oq5qo7e-a3rfeyfwo7d93heq0y5vhyzod 172.31.245.104:2377 |
| - | a50423920e0d | + | # Эту команду необходимо будет выполнить на каждой присоединяймой ноде |
| - | fa24abd60049 | + | |
| </ | </ | ||
| - | === Подсоеденение к контейнеру | + | ====== Настройки ====== |
| - | <note tip> | + | === Log drivers: управление логами === |
| - | < | + | nano / |
| - | $ sudo docker exec -i -t a50423920e0d /bin/bash | + | < |
| - | $ sudo docker exec -i -t a50423920e0d /bin/sh | + | { |
| + | "log-driver": | ||
| + | "log-opts": { | ||
| + | " | ||
| + | "max-file": " | ||
| + | } | ||
| + | } | ||
| </ | </ | ||
| - | ===== Использование docker-composer.yml | + | ====== |
| - | + | ||
| - | <hidden docker-composer.yml> | + | |
| - | <code yaml> | + | |
| - | version: ' | + | |
| - | services: | + | |
| - | mariadb: | + | |
| - | build: ./ | + | |
| - | restart: always | + | |
| - | environment: | + | |
| - | MYSQL_ROOT_PASSWORD: | + | |
| - | MYSQL_DATABASE: | + | |
| - | MYSQL_USER: skringo | + | |
| - | MYSQL_PASSWORD: | + | |
| - | ports: | + | |
| - | - ' | + | |
| - | expose: | + | |
| - | - ' | + | |
| - | volumes: | + | |
| - | - ' | + | |
| - | redis: | + | |
| - | build: ./ | + | |
| - | restart: always | + | |
| - | environment: | + | |
| - | - REDIS_VERSION=4.0.9 | + | |
| - | ports: | + | |
| - | - ' | + | |
| - | expose: | + | |
| - | - ' | + | |
| - | redis-commander: | + | |
| - | container_name: | + | |
| - | hostname: redis-commander | + | |
| - | image: rediscommander/ | + | |
| - | build: . | + | |
| - | restart: always | + | |
| - | environment: | + | |
| - | - REDIS_HOSTS=local: | + | |
| - | ports: | + | |
| - | - 8081:8081 | + | |
| - | nginx: | + | |
| - | build: ./ | + | |
| - | restart: always | + | |
| - | links: | + | |
| - | - php | + | |
| - | volumes: | + | |
| - | - ' | + | |
| - | - ' | + | |
| - | - ' | + | |
| - | environment: | + | |
| - | - NGINX_VERSION=1.13.12-1~stretch | + | |
| - | - NGINX_HOST=skringo.loc | + | |
| - | - NGINX_PORT=80 | + | |
| - | ports: | + | |
| - | - ' | + | |
| - | command: 'sh -c " | + | |
| - | elasticsearch: | + | |
| - | build: ./ | + | |
| - | restart: always | + | |
| - | ports: | + | |
| - | - ' | + | |
| - | expose: | + | |
| - | - ' | + | |
| - | environment: | + | |
| - | - ELASTICSEARCH_VERSION=5.6.9 | + | |
| - | - JAVA_ALPINE_VERSION=8.151.12-r0 | + | |
| - | - JAVA_VERSION=8u151 | + | |
| - | - LANG=C.UTF-8 | + | |
| - | - cluster.name=docker-cluster | + | |
| - | - bootstrap.memory_lock=true | + | |
| - | - " | + | |
| - | ulimits: | + | |
| - | memlock: | + | |
| - | soft: -1 | + | |
| - | hard: -1 | + | |
| - | mem_limit: 1g | + | |
| - | kibana: | + | |
| - | build: ./ | + | |
| - | links: | + | |
| - | - elasticsearch | + | |
| - | ports: | + | |
| - | - ' | + | |
| - | php: | + | |
| - | build: ./ | + | |
| - | restart: always | + | |
| - | links: | + | |
| - | - mariadb | + | |
| - | - redis | + | |
| - | - elasticsearch | + | |
| - | ports: | + | |
| - | - ' | + | |
| - | expose: | + | |
| - | - ' | + | |
| - | - ' | + | |
| - | environment: | + | |
| - | - PHP_IDE_CONFIG=serverName=skringo.loc | + | |
| - | volumes: | + | |
| - | - ' | + | |
| - | - ' | + | |
| - | - ' | + | |
| - | - ' | + | |
| - | + | ||
| - | networks: | + | |
| - | default: | + | |
| - | external: | + | |
| - | name: nginx-proxy | + | |
| - | </ | + | |
| - | </ | + | |
| - | + | ||
| - | ==== Подсоеденение к контейнеру ==== | + | |
| - | + | ||
| - | <code bash>$ docker-compose exec php / | + | |
| - | Где php название используемого сервиса / services | + | |
| - | + | ||
| - | ====== Проблемы и их решения ====== | + | |
| - | + | ||
| - | ===== Circular import between fpm and nginx ===== | + | |
| - | + | ||
| - | Возникает при циклическом связывании контейнеров (2-ух сторонее связывание) | + | |
| - | В качестве решенияпроблемы, | + | |
| - | + | ||
| - | <code yaml> | + | |
| - | fpm: | + | |
| - | build: ./ | + | |
| - | links: | + | |
| - | - ambassador: | + | |
| - | nginx: | + | |
| - | build: ./ | + | |
| - | links: | + | |
| - | - ambassador: | + | |
| - | ambassador: | + | |
| - | image: cpuguy83/ | + | |
| - | volumes: | + | |
| - | - "/ | + | |
| - | command: "-name testapp_fpm_1 -name testapp_nginx_1" | + | |
| - | </ | + | |
| - | + | ||
| - | ===== ERROR: Couldn' | + | |
| - | + | ||
| - | скорее всего вам потребуется сделать следующее: | + | |
| - | <code bash>$ docker-machine create --driver=xhyve dev --xhyve-experimental-nfs-share</ | + | |
| - | + | ||
| - | ====== Компоненты ====== | + | |
| - | + | ||
| - | * [[https:// | + | |
| - | * [[https:// | + | |
| - | * [[https:// | + | |
| - | * [[https:// | + | |
| - | * [[https:// | + | |
| - | * [[https:// | + | |
| - | + | ||
| - | ====== Документация / Статьи ====== | + | |
| - | + | ||
| - | * [[https:// | + | |
| - | * [[http:// | + | |
| - | * [[https:// | + | |
| - | * [[https:// | + | |
| - | * https:// | + | |
| - | * https:// | + | |
| - | * http:// | + | |
| - | * https:// | + | |
| - | * https:// | + | |
| - | * http:// | + | |
| - | * https:// | + | |
| - | * https:// | + | |
| - | * https:// | + | |
| - | * http:// | + | |
| - | * https:// | + | |
| - | * http:// | + | |
| - | * https:// | + | |
| - | * https:// | + | |
| - | ====== Другие системы виртуализации ====== | + | * [[docker-socket|Docker Socket]] |
| - | {{topic> | + | ====== Мониторинг ====== |
| + | * [[software: | ||
| + | * [[software: | ||
| + | * [[software: | ||