Docker

Неудачные варианты docker-compose

UVDesk

https://github.com/uvdesk/community-skeleton/wiki/dockerize-helpdesk-project

version: '3'

services:
    uvdesk:
        image: camojiet/uvdesk
        tty: true
        depends_on:
          - db
        environment:
            MYSQL_USER: uvdesk_user
            MYSQL_PASSWORD: xxxxxxxxxxxxxxxxx
            MYSQL_ROOT_PASSWORD: xxxxxxxxxxxxxxxxx
            MYSQL_DATABASE: uvdesk_db
        ports:
            - 80:80
        restart: always
        volumes:
            - "app_data:/var/www:rw"
    db:
        command: "--default-authentication-plugin=mysql_native_password"
        environment:
          - MYSQL_ROOT_PASSWORD=xxxxxxxxxxxxxxxxx
          - MYSQL_DATABASE=uvdesk_db
          - MYSQL_USER=uvdesk_user
          - MYSQL_PASSWORD=xxxxxxxxxxxxxxxxx
        image: "mysql:5.7"
        restart: always
        volumes:
          - "db_data:/var/lib/mysql"
volumes:
  app_data:
    driver: local
  db_data:
    driver: local

Подготовка lxc под docker

Docker + LXC + ZFS

Оказывается, ставший по умолчанию в docker overlay2 docker storage driver не поддерживает работу с ZFS

Решение №1

Использовать zfs как блочное устройство и форматить его в ext4. После этого overlay2 работает с ним без проблем.
https://docs.erlipan.dev/books/mywiki/page/docker-in-unprivileged-lxc-container-with-zfs
Вариант не очень красивый, но рабочий.

Решение №2

Использовать fuse-overlayfs

 cat /etc/docker/daemon.json
{
  "storage-driver": "fuse-overlayfs"
}

lxc + docker + overlay2 (без zfs)

Прикладываю ссылку, чтобы не потерять, она касается только lxc + docker + overlay2 (без zfs)
https://singularo.com/docker-inside-proxmox-lxc-container

Шпаргалка Docker

Обновить контейнера docker compose

docker compose pull
docker compose up --force-recreate --build -d
docker image prune -f

Очистить docker

docker system prune -af

https://liberbear.com/posts/docker-prune-list/