Различия

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

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

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
system:docker [2018/06/25 23:35] – [Работа с образами / Images] 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 ====+<code bash> 
 +$ apt update && \ 
 +apt install ca-certificates curl gnupg lsb-release -y && \ 
 +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>
  
 +====== Docker ======
  
-<note tip>Для справки \\ <code bash> +<code bash> 
-$ docker image +sudo groupadd docker 
-</code></note>+$ sudo usermod -aG docker $USER 
 +$ newgrp docker 
 +</code>
  
-==== Работа с контейнерами / Containers ====+====== Docker Swarm ======
  
-<note tip>Для справки \\ <code bash>$ docker</code></note> +Если Docker Swarm создается 
- +<code bash> 
-====== Проблемы и их решения ======+$ docker swarm init 
 +# В вответ docker swarm join --token SWMTKN-1-54k2k418tw2j0juwm3inq6crp4ow6xogswihcc5azg7oq5qo7e-a3rfeyfwo7d93heq0y5vhyzod 172.31.245.104:2377 
 +# Эту команду необходимо будет выполнить на каждой присоединяймой ноде 
 +</code>
  
-===== Circular import between fpm and nginx ===== +Если необходимо присоеденить к уже существующему 
- +<code bash> 
-Возникает при циклическом связывании контейнеров (2-ух сторонее связывание) +$ docker swarm join-token worker 
-В качестве решенияпроблемы, на данный момент, можно воспользоваться прокси серверомонтейнером docker-grand-ambassador +В вответ docker swarm join --token SWMTKN-1-54k2k418tw2j0juwm3inq6crp4ow6xogswihcc5azg7oq5qo7e-a3rfeyfwo7d93heq0y5vhyzod 172.31.245.104:2377 
- +# Эту команду необходимо будет выполнить на каждой присоединяймой ноде
-<code yaml> +
-fpm: +
-  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` =====+====== Настройки ======
  
-скорее всего вам потребуется сделать следующее: +=== Log drivers: управление логами ===
-<code bash>$ docker-machine create --driver=xhyve dev --xhyve-experimental-nfs-share</code>+
  
-====== Компоненты ====== +nano /etc/docker/daemon.json 
- +<code json> 
-  * [[https://docs.docker.com/|Docker]] +{ 
-  * [[https://docs.docker.com/compose/|docker-compose]] - Компановщик контейнеров +  "log-driver""local", 
-  * [[https://docs.docker.com/machine/|docker-machine]] - Это инструментпозволяющий управлять удалёнными хостами Docker с локального компьютера. +  "log-opts"
-  * [[https://www.docker.com/products/docker-toolbox|Docker Toolbox]] - Комплект необходимых программ для Windows или MacOs (Внимание!!! ставит VirtualBox ) +    "max-size": "10m"
-  * [[https://www.weave.works/products/weave-scope/|Weave Scope]] - Это очень удобный и наглядный сервис для мониторинга Docker контейнеров. +    "max-file""3" 
-  * [[https://github.com/google/cadvisor|cAdvisor]] - Система мониторинга за контейнерами +  } 
- +} 
-====== Документация Статьи ======+</code>
  
-  * [[https://habr.com/post/261415/|Свой облачный хостинг за 5 минут. Часть 1: Ansible, Docker, Docker Swarm]] +====== API ======
-  * [[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]]