METANIT.COM
6.19K subscribers
1.79K photos
86 videos
10 files
1.26K links
Канал о программировании и разработке сайта metanit.com
Download Telegram
Шпаргалка по базовому функционалу Docker #docker
👍41👏1
Шпаргалка по Docker #docker
11
Краткая шпаргалка по основам Docker #docker
🔥61👏1
Рабочий процесс Docker

👉 Dockerfile
- Dockerfile представляет набор инструкций, где перечислены все компоненты (программное обеспечение и конфигурации), необходимые для приложения.

👉 Образ Docker
- С помощью Dockerfile создается образ Docker. Образ — как замороженный снимок приложения, содержащий все необходимое для его работы.

👉 Контейнер Docker
- Для запуска образа Docker создается контейнер Docker.
Контейнер подобен реальному работающему экземпляру приложения, и его можно запускать, останавливать и даже дублировать по мере необходимости.
#docker
👍1
Принципы композиции образа в Docker #docker
4👍4👏1
Команды Docker для Java-разработчиков #java #docker
🤨7👍52
Роудмап по Docker #docker
11❤‍🔥5👏2
Процесс работы Docker #docker
👍9
9 рекомендаций по работе с Docker, которые помогут оптимизировать работу с контейнерами:
(продолжение предыдущего поста)

1. Используйте официальные образы
Использование официальных образов Docker обеспечивает безопасность, надежность и регулярные обновления. Пример: FROM node:14-alpine.

2. Используйте конкретные версии
Указание конкретной версии образа предотвращает неожиданные изменения. Пример: FROM node:14.17.0-alpine3.13.

3. Многоступенчатые сборки
Многоступенчатые сборки уменьшают размер финального образа, исключая инструменты сборки и зависимости. Пример:
   FROM build-image AS build  
# Build steps
FROM production-image
COPY --from=build /app /app


4. Используйте файл .dockerignore
Файл .dockerignore исключает ненужные файлы из контекста сборки, ускоряя процесс и уменьшая размер образа. Пример содержимого:
  
node_modules
npm-debug.log


5. Наименьшие привилегии
Запуск приложений с правами непривилегированного пользователя повышает безопасность. Пример:
   RUN useradd -m myuser  
USER myuser
CMD node index.js


6. Используйте переменные окружения
Использование переменных окружения увеличивает переносимость приложения между средами. Пример:
   ENV APP_HOME /app  
WORKDIR $APP_HOME


7. Порядок инструкций важен для кэширования
Порядок инструкций в Dockerfile влияет на эффективность кэширования. Рекомендуется начинать с менее изменяемых команд. Пример:
   FROM debian  
RUN apt-get update
RUN apt-get -y install openjdk ssh vim
COPY . /app
CMD ["java", "-jar", "/app/target/app.jar"]


8. Имена для образов
Назначение имен для образов помогают организовать и управлять образами. Пример:
   LABEL maintainer="name@example.com"  
LABEL version="1.0"


9. Сканирование образов
Проверка образов на уязвимости с помощью команды docker scan помогает предотвратить проблемы безопасности.

#docker
👍145👏1
Шпаргалки по Docker #docker
🔥8👏21