Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
system:docker [2018/06/25 23:42] – [Список образов] mirocowsystem:docker [2026/01/12 20:37] (текущий) 192.168.1.159
Строка 1: Строка 1:
-{{tag>vagrant chef shell puppet salt ansible docker devops virtual}}+{{tag>vagrant chef shell puppet salt ansible docker devops virtual alpine}}
  
 ====== Docker ====== ====== Docker ======
Строка 5: Строка 5:
 {{https://habrastorage.org/files/67f/73a/551/67f73a551a254c19854adf3b4665a7bb.png?300}} {{https://habrastorage.org/files/67f/73a/551/67f73a551a254c19854adf3b4665a7bb.png?300}}
  
-| VIRTUAL MACHINES                                                                                                                                                  | CONTAINERS                                                                                                                                                                                                                                                                                                                 | 
-| {{https://www.docker.com/sites/default/files/WhatIsDocker_2_VMs_0-2_2.png?200}}                                                                                   | {{https://www.docker.com/sites/default/files/WhatIsDocker_3_Containers_2_0.png?200}}                                                                                                                                                                                                                                       | 
-| Virtual machines include the application, the necessary binaries and libraries, and an entire guest operating system -- all of which can amount to tens of GBs.   | Containers include the application and all of its dependencies --but share the kernel with other containers, running as isolated processes in user space on the host operating system. Docker containers are not tied to any specific infrastructure: they run on any computer, on any infrastructure, and in any cloud.   | 
  
-===== Установка =====+====== Установка ======
  
-  * https://www.docker.com/community-edition#/download :!: +===== Ubuntu =====
-  * https://store.docker.com/editions/community/docker-ce-desktop-mac :!: +
-  * https://docs.docker.com/engine/installation/linux/debian/+
  
-nano /etc/apt/sources.list +<code bash> 
-<code> +$ apt update && \ 
- deb https://apt.dockerproject.org/repo debian-stretch main+apt install ca-certificates curl gnupg lsb-release -y && \ 
 +mkdir -p /etc/apt/keyrings && \ 
 +curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg && \ 
 +echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null && \ 
 +apt update && \ 
 +apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin -y
 </code> </code>
  
-===== Использование ===== +===== Debian =====
- +
-==== Работа с образами / Images ==== +
- +
- +
-<note tip>Для справки \\ <code bash> +
-$ docker image +
-</code></note> +
- +
-=== Вывести список образов ===+
  
 <code bash> <code bash>
-$ docker images +apt update && \ 
-REPOSITORY                   TAG                 IMAGE ID            CREATED             SIZE +apt install ca-certificates curl gnupg lsb-release -y && \ 
-yii2_php                     latest              6a950c96e01d        23 hours ago        159MB+mkdir -p /etc/apt/keyrings && \ 
 +curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc && \ 
 +echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null && \ 
 +apt update && \ 
 +apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y
 </code> </code>
  
-=== Удалить образ ===+====== Docker ======
  
 <code bash> <code bash>
-$ docker image rm 6a950c96e01d+sudo groupadd docker 
 +$ sudo usermod -aG docker $USER 
 +$ newgrp docker
 </code> </code>
  
-=== Анализировать образ ===+====== Docker Swarm ======
  
 +Если Docker Swarm создается
 <code bash> <code bash>
-$ docker image inspect 6a950c96e01d +$ docker swarm init 
-+# В вответ docker swarm join --token SWMTKN-1-54k2k418tw2j0juwm3inq6crp4ow6xogswihcc5azg7oq5qo7e-a3rfeyfwo7d93heq0y5vhyzod 172.31.245.104:2377 
-    { +# Эту команду необходимо будет выполнить на каждой присоединяймой ноде
-        "Id": "sha256:6a950c96e01de12b463f1fce232b48f530c487c2d7af5fef2e59c693c21c8af1", +
-        "RepoTags":+
-            "yii2_php:latest" +
-        ], +
-        "RepoDigests": [], +
-        "Parent": "sha256:a0883c +
-... +
-}+
 </code> </code>
  
-=== Избавляемся от неиспользуемых образов === +Если необходимо присоеденить к уже существующему
- +
-<code bash>$ docker image prune</code> +
- +
-=== Список образов === +
- +
-<note tip>Алиас к <code bash>$ docker images</code></note> +
 <code bash> <code bash>
-$ docker image ls +$ docker swarm join-token worker 
-REPOSITORY                   TAG                 IMAGE ID            CREATED             SIZE +# В вответ docker swarm join --token SWMTKN-1-54k2k418tw2j0juwm3inq6crp4ow6xogswihcc5azg7oq5qo7e-a3rfeyfwo7d93heq0y5vhyzod 172.31.245.104:2377 
-yii2_php                     latest              6a950c96e01d        23 hours ago        159MB +# Эту команду необходимо будет выполнить на каждой присоединяймой ноде
-yii2_nginx                   latest              878bb2a77dfa        27 hours ago        23.2MB +
-yii2_kibana                  latest              e3f6594b57e1        27 hours ago        221MB +
-yii2_elasticsearch           latest              117a536c2655        27 hours ago        129MB +
-yii2_redis                   latest              546a364104fd        27 hours ago        31.1MB +
-yii2_mariadb                 latest              03ddc39bcf15        27 hours ago        204MB+
 </code> </code>
-==== Работа с контейнерами / Containers ==== 
  
-<note tip>Для справки \\ <code bash>$ docker</code></note>+====== Настройки ======
  
-====== Проблемы и их решения ======+=== Log drivers: управление логами ===
  
-===== Circular import between fpm and nginx ===== +nano /etc/docker/daemon.json 
- +<code json
-Возникает при циклическом связывании контейнеров (2-ух сторонее связывание) +{ 
-В качестве решенияпроблемы, на данный момент, можно воспользоваться прокси сервером/контейнером docker-grand-ambassador +  "log-driver""local", 
- +  "log-opts"{ 
-<code yaml+    "max-size""10m", 
-fpm: +    "max-file": "3
-  build./build/fpm +  
-  links: +}
-    ambassador:nginx +
-nginx: +
-  build: ./build/nginx +
-  links+
-    - ambassador:fpm +
-ambassador: +
-  image: cpuguy83/docker-grand-ambassador +
-  volumes+
-    - "/var/run/docker.sock:/var/run/docker.sock+
-  command: "-name testapp_fpm_1 -name testapp_nginx_1"+
 </code> </code>
  
-===== ERROR: Couldn't connect to Docker daemon - you might need to rundocker-machine start default` ===== +====== API ======
- +
-скорее всего вам потребуется сделать следующее: +
-<code bash>$ docker-machine create --driver=xhyve dev --xhyve-experimental-nfs-share</code> +
- +
-====== Компоненты ====== +
- +
-  * [[https://docs.docker.com/|Docker]] +
-  * [[https://docs.docker.com/compose/|docker-compose]] - Компановщик контейнеров +
-  * [[https://docs.docker.com/machine/|docker-machine]] - Это инструмент, позволяющий управлять удалёнными хостами Docker с локального компьютера. +
-  * [[https://www.docker.com/products/docker-toolbox|Docker Toolbox]] - Комплект необходимых программ для Windows или MacOs (Внимание!!! ставит VirtualBox ) +
-  * [[https://www.weave.works/products/weave-scope/|Weave Scope]] - Это очень удобный и наглядный сервис для мониторинга Docker контейнеров. +
-  * [[https://github.com/google/cadvisor|cAdvisor]] - Система мониторинга за контейнерами +
- +
-====== Документация / Статьи ====== +
- +
-  * [[https://habr.com/post/261415/|Свой облачный хостинг за 5 минут. Часть 1: Ansible, Docker, Docker Swarm]] +
-  * [[http://habrahabr.ru/post/262397/|Свой облачный хостинг за 5 минут. Часть 2: Service Discovery]] +
-  * [[https://habr.com/post/264269/|Свой облачный хостинг за 5 минут. Часть 3: Consul, Registrator, Consul-Template]] +
-  * [[https://habrahabr.ru/post/277699/|о технологии]] +
-  * https://habrahabr.ru/post/253877/ :!: +
-  * https://habrahabr.ru/post/309556/ :!: +
-  * http://ru.stackoverflow.com/questions/tagged/docker-compose +
-  * https://habrahabr.ru/post/263083/ +
-  * https://blog.amartynov.ru/docker-mysql/ +
-  * http://onedev.net/post/579 +
-  * https://dou.ua/lenta/articles/vagrant/ +
-  * https://ast.rocks/blog/docker-create-container +
-  * https://xakep.ru/2015/06/04/docker-faq/ +
-  * http://dotsandbrackets.com/quick-intro-to-docker-compose-ru/ +
-  * https://toster.ru/q/200627 +
-  * http://devacademy.ru/posts/ustanovka-i-ispol-zovaniie-docker-compose-na-ubuntu-14-04/ +
-  * https://ast.rocks/blog/docker-orchestration +
-  * https://docs.docker.com/docker-for-mac/#uninstall-or-reset+
  
-====== Другие системы виртуализации ======+  * [[docker-socket|Docker Socket]]
  
-{{topic>[virtual]}}+====== Мониторинг ======
  
 +  * [[software:monitoring:promtail-loki-grafana]]
 +  * [[software:monitoring:fluent-bit-loki-grafana]]
 +  * [[software:monitoring:fluent-bit-fluentd-loki-grafana]]