Правила compose-файлу
Що не можна використовувати в docker-compose.yml на Jambotron: привілейований режим, простори імен хоста, шляхи поза проєктом тощо.
Усі проєкти працюють на спільному сервері, тому частину можливостей Docker заблоковано. Деплой зупиниться зі списком порушень, якщо compose-файл використовує:
- у сервісах:
privileged,cap_add,devices,device_cgroup_rules,gpus,security_opt,sysctls,runtime,cgroup_parent,volumes_from,external_links,oom_kill_disable,provider,use_api_socket, резервування GPU (deploy.resources.reservations.devices), привілейовані хукиpost_start/pre_stop; - простори імен хоста:
network_mode,pid,ipc,uts,userns_mode,cgroupзі значеннямhostабоcontainer:…; - шляхи поза проєктом: bind mounts,
env_file,build.context,build.dockerfile, файлиsecrets/configs— усе має бути всередині папки проєкту (тобто без/var/run/docker.sockі без../); - у
build:privileged,entitlements,ssh,secrets,network: host; віддалені контексти збирання (URL,git@…); - томи: лише драйвер
local, безdriver_opts, безexternalтомів; - мережі: лише драйвер
bridge, безdriver_opts, безexternalмереж; безexternalsecrets і configs.
Іменовані томи та образи з Docker Hub чи інших реєстрів працюють як завжди.