У меня вопрос по поводу docker compose.Я новичок в докере, и я не могу понять "правильный" поток для развертывания.
Предположим, у нас есть "Dockerfile" , который содержит шаги для построения образа из проектаисходные файлы.И у нас есть "docker-compose.yml" , который фактически строит этот "Dockerfile" вместе с еще 2 сервисами.Здесь это не важно, но допустим, что это nginx, webapi (текущий проект) и mongodb.
Итак, если я запусту "docker compose up" на моей машине - это будетсоздайте 3 изображения (webapi, nginx, mongodb) и запустите их.Здесь все идеально.
Вопрос в том, что мне нужно сделать, чтобы развернуть его в производство.Что я пробовал:
Я могу проверить git на рабочем сервере и запустить «docker compose up» , и он будет работать.Но я думаю, что это не тот путь - использование производственного сервера для создания проектов кажется глупым.
Я могу запустить "docker compose build" локально, получить3 изображения, отправьте их в хранилище докеров, перейдите к производственной загрузке изображений из хранилища и запустите их один за другим.В этом случае я вообще не вижу смысла в «docker compose» , я теряю способ легко определять объемы и отношения между изображениями, что я могу сделать с помощью docker compose.Это также потребует много ручного действия или некоторых пользовательских сценариев для его автоматизации.
Похоже, есть способ использовать "докер" подключиться к удаленному серверу и использовать «docker compose up» , но я не смог заставить его работать.По некоторым причинам не удалось подключиться из Windows к удаленному докеру в Linux.Прежде чем идти дальше с этой опцией, мне нужно понять / подтвердить, это случай удаленного докера и «docker compose up» , где будет происходить сборка?И если у меня есть несколько томов, определенных в "docker-compose.yml" , они будут созданы на локальной машине или на удаленной?