Google Cloud - Полный CI/CD с НУЛЯ - Сборка и Деплой Docker Image из GitHub через Cloud Build

  Рет қаралды 9,695

ADV-IT

ADV-IT

Күн бұрын

Пікірлер: 73
@Mausspb
@Mausspb 3 жыл бұрын
Гораздо проще понимать, что будет в видео, когда вначале есть план-схема. Простой проект, все понятно реализовано. Спасибо за ваш труд !
@fancystacy
@fancystacy 2 жыл бұрын
Шикарно. Побольше бы такой полезной информации. Большое спасибо. Цьом!
@ИльдарКаримов-з2н
@ИльдарКаримов-з2н 3 жыл бұрын
Денис, здарова! Спасибо за материал! Очень полезно!
@ADV-IT
@ADV-IT 3 жыл бұрын
You are Welcome!
@viktorkrechikov7293
@viktorkrechikov7293 3 жыл бұрын
Thanks for this video!! Great job Denis any way for me!
@OlegLoginov911
@OlegLoginov911 3 жыл бұрын
Суперское видео, как и предыдущее! Планируются ли ещё ролики на GCP в таком же объеме, как по AWS?) На работе используем GCP, но русскоязычных роликов, самое главное понятных и толковых, нет. А на вашем канале много полезных вещей уже для себя подчерпнул
@ADV-IT
@ADV-IT 3 жыл бұрын
В таком объеме не будет :) Следующее тоже про GCP буднт
@OlegLoginov911
@OlegLoginov911 3 жыл бұрын
@@ADV-IT отлично) Подскажите, а dbt вы в своей работе не используете?
@olegderivedmed9285
@olegderivedmed9285 Жыл бұрын
Здравствуйте, на степе пуша валится с ошибкой " error parsing HTTP 404 response body: invalid character......." Никто не сталкивался с этим? Все пермишны дал, настроил как по видео.
@tomtovski9270
@tomtovski9270 3 жыл бұрын
Денис привет! В очередной раз огромное тебе спасибо за твой труд. Лучший канал на данную тематику. Я хоть далеко не девопс, но сталкиваюсь с похожими вопросами каждый день. А учитывая тот факт, что у меня нет опыта в IT от слова совсем, твоя подача материала просто идеальна для таких как я. Хотел спросить, не планируешь ли ты уроки по Азуре? После AWS она кажется такой запутанной и неудобной. Но хотелось бы разобраться. А с твоей помощью это было бы круто и весело. Спасибо)
@ADV-IT
@ADV-IT 3 жыл бұрын
Не не планирую, я им вообще не занимаюсь и особо не знаю
@tomtovski9270
@tomtovski9270 3 жыл бұрын
@@ADV-IT Ну ладно. Спасибо за быстрый ответ. Как всегда)
@user-gq8vb6ie3w
@user-gq8vb6ie3w Жыл бұрын
а запускать docker -compose файлы он может или только dockerfile ?
@12389441
@12389441 2 жыл бұрын
Error 404 - Cloud Run запускает my-docker-app-prod с правами Require authentication. Как задать Allow unauthenticated invocations на этапе Deploy?
@dmitriyskazhukin7254
@dmitriyskazhukin7254 2 ай бұрын
Testcontainers кто то юзает с dcb?
@evgeniichornyi678
@evgeniichornyi678 3 жыл бұрын
Спасибо!, Хотелось бы подобное видео по AWS
@daviddav4778
@daviddav4778 3 жыл бұрын
меня нравится и "веб программирование" и "сисадмин", пожалуста скажите,в таком случае, как решить, какой выбрать? (кратко плюсы и минусы можете сказать?)
@ADV-IT
@ADV-IT 3 жыл бұрын
Учи и то и то, в чем найдешь первую работу, там и останешся
@markvalman8325
@markvalman8325 2 жыл бұрын
מדהים, תודה!
@ADV-IT
@ADV-IT 2 жыл бұрын
Bevakasha!
@rgsx69
@rgsx69 3 жыл бұрын
Спасибо. Очень полезно!
@dmitry_5525
@dmitry_5525 3 жыл бұрын
Как всегда спасабо! Как лучше делать, папку с программой заливать в образ или папку с программой на хосте монтировать в образе?
@onyx_thai
@onyx_thai 3 жыл бұрын
Развертывание и деплой в k8s планируется?
@ADV-IT
@ADV-IT 3 жыл бұрын
Да слелаю как нибудь, на самом деле это также просто сделать. В GitHub лежат manifest файлы, у CodeBuild есть permission деплоить в GKE, ну и все, запускай команды сначала getcredentilals, а потом kubectl apply -f
@denis7hko
@denis7hko 2 жыл бұрын
Что и как нужно сделать, чтоб высылались уведомления на почтовый ящик о статусе сборки ? Сборка завершилась удачно, сборка завершилась с ошибкой и т.п.
@ADV-IT
@ADV-IT 2 жыл бұрын
cloud.google.com/build/docs/subscribe-build-notifications
@drysha
@drysha 2 жыл бұрын
Спасибо за хороший урок. Я пытаюсь залить свой проект на GcP, но дело в том, что я его реализовал все в 1 репо: frontend + backend(+sql) и собирается это все через docker compose. Локально командой docker-compose up -d --build все собирается в 1 контейнере с 3 имиджами: front - angular, back - nestjs, mySQL. Могли бы подсказать в какую сторону смотреть, что бы сделать подобное в GcP. Сорри за такой "нюбский" вопрос, но в DevOps части я не селен )
@kolobroadgh8532
@kolobroadgh8532 Жыл бұрын
привет, получилось разобраться как это делать?
@drysha
@drysha Жыл бұрын
@@kolobroadgh8532 привет, неа.. пока так и оставил отдельный репо для фронта и бэка 😴
@kolobroadgh8532
@kolobroadgh8532 Жыл бұрын
@@drysha chatgpt говорит что выход это билдить все по отдельности а потом подружить через кубик или какой-то другой гугл сервис. Кажется композ тут не сработает :(
@Roman4ello
@Roman4ello 2 жыл бұрын
Денис, а ты не думал создать курс по GCP. Я обещаю его купить!!!
@ADV-IT
@ADV-IT 2 жыл бұрын
Начинал, kzbin.info/www/bejne/a6iok4GJp9hjb5o
@Roman4ello
@Roman4ello 2 жыл бұрын
@@ADV-IT Да, я видел. И твои уроки очень крутые. Простым языком рассказываешь четко все. Надеюсь будет продолжение. Если будет платно, сообщи тут пожалуйста, где можно купить. Я считаю за твой труд ты вполне можешь сделать курс платным
@12389441
@12389441 2 жыл бұрын
А это все можно описать с помощью Terraform или подключение триггеров только в ручную?
@ADV-IT
@ADV-IT 2 жыл бұрын
Все что делается на GCP можно сделать через Terraform
@РоманЮхименко-и3в
@РоманЮхименко-и3в 4 ай бұрын
Добрый день, великолепный гайд но не могу разобраться в одной вещи GCP заставляет сразу в триггере указать сервис аккаунт(менеджмента), я указываю и у меня ничего не деплоится. А еще тк я его сразу указал я не могу добавить адрес менеджмента в другие проекты, как справиться?
@РоманЮхименко-и3в
@РоманЮхименко-и3в 4 ай бұрын
Если вы поможете я буду просто космически благодарен
@ADV-IT
@ADV-IT 4 ай бұрын
Видать не хватает permissions, или может GCP чето поменяли.
@РоманЮхименко-и3в
@РоманЮхименко-и3в 4 ай бұрын
@@ADV-IT я ошибся и написал комм к другому видосу про ci/cd из плейлиста, но вот не задача, с клауд раном и докером тоже не завелось, GCP однозначно что то изменили ведь нужно теперь обязательно в клауд фанкшн выбирать аккаунт, а потом он не привязыввется уже. Ничего страшного. Хотел бы за советом обратиться, хороший ли план пройти jenkins(даже с учетом того что github anctions есть?) гит ансибл и базу из вашего ролика прошел, вот не знаю куда податься.. хотел бы попробовать свои пайплайны настраивать :D
@РоманЮхименко-и3в
@РоманЮхименко-и3в 4 ай бұрын
@@ADV-IT а ci/cd на gcp я ровно 3 суток уже не могу настроить, не хочу перегореть ливаю оттуда(
@ADV-IT
@ADV-IT 4 ай бұрын
@@РоманЮхименко-и3в Jenkins очень устарел, если ты в РФ то стоит его учить(Jenkins) так как многие другие сервисы заблокированы.
@BorysOliinyk
@BorysOliinyk 3 жыл бұрын
Подскажите, а можно ли все это сделать в рамках одного проекта, без разделения на прод, стейдж, менеджмент? Если можно, то в чем преимущество разделения?
@ADV-IT
@ADV-IT 3 жыл бұрын
Можно конечно в одном проекте и это будет проще намного, только разделение это полная изоляция ресурсов и плюс ты контролируешь стоимость каждого проекта. В Одном проекте = не профессионально в детском саде. Разделение по проектам = профессионально на работе.
@MrSerogKa
@MrSerogKa 3 жыл бұрын
классное видео! Был ли у вас опыт работы з задачей по промоушену докер имеджей из стейджа в прод?
@ADV-IT
@ADV-IT 3 жыл бұрын
Зачем? Если image работает в stage то просто собирай туже версию в таком prod или latest. В этом примере я показал как это реально делают
@MrSerogKa
@MrSerogKa 3 жыл бұрын
@@ADV-IT ну да. Просто это одна из стратегий доставки кода, когда один контейнер должен одинаково работати на любом стейдже. А факту имедж просто перетэгуеться и переносится в другой реджестри
@denisastahov505
@denisastahov505 3 жыл бұрын
@@MrSerogKa Мы с git branch работаем только, и просто делаем новый image при merge to main.
@Синяякапибара-й2я
@Синяякапибара-й2я 3 жыл бұрын
Денис, спасибо за ролики) Планируется ли на канале уроки по Packer/Vagrant/Chef?
@ADV-IT
@ADV-IT 3 жыл бұрын
Нет не планирую, давно думал сделать по packer, потом глянул, там много поменялось с того момента когда я его последний раз использовал
@dmitriybondarenko5411
@dmitriybondarenko5411 3 жыл бұрын
Скажи пожалуйста, а планируешь ли ты подобный урок по AWS с их CodePipeline? Было бы круто З.Ы. спасибо за уроки) ты крут))
@ADV-IT
@ADV-IT 3 жыл бұрын
Вообще нет, но может быть.
@an47995s
@an47995s 3 жыл бұрын
прикольный проект, интересно, насколько сложнее сделать всё то же самое терраформом
@4988925
@4988925 3 жыл бұрын
Проще раз в 5 наверное хотя бы из-за отсутствия гемороя с yaml как надумал так и пишешь
@ADV-IT
@ADV-IT 3 жыл бұрын
Я делал всё это terraformом на проекте, не очень сложно, самое сложное это прописать правильные permissions по проектам
@an47995s
@an47995s 3 жыл бұрын
@@ADV-IT а каким ресурсом можно декларировать permissions, через security groups? а потом уже привязывать sg к нашим ресурсам в проектах?
@ADV-IT
@ADV-IT 3 жыл бұрын
resource "google_project_service_identity" resource "google_project_iam_member" resource "google_artifact_registry_repository_iam_member"
@developmentapp
@developmentapp 28 күн бұрын
В России, эта поебень больше не работает!
@Д-рВедьмак
@Д-рВедьмак 2 жыл бұрын
Почти все получилось, но на запуске выдает ошибку "run.services.get" Всем начал добавлять уровни доступа, дошел до того, что все проекты имеют максимум (все владельцы), а ошибка все равно не пропадает. Вероятно, добавлял не туда, хотя проектов всего три и ошибиться особенно негде, как мне казалось Словом, тема permissions не просто сложная, а вообще не понятная - что, куда и кому давать, а также почему именно выдается эта ошибка при обращении к сервису "hello-prod" (сервис с таким именем существует, тоже проверил неоднократно)
@ADV-IT
@ADV-IT 2 жыл бұрын
Я же в видео всё показал, может ты пропустил где-то
@Д-рВедьмак
@Д-рВедьмак 2 жыл бұрын
@@ADV-IT Маловероятно, но возможно. Я очень аккуратно изучаю материал, примерно 20 минут видео у меня занимает около 3-4 часов в продвижении и понимании. На данный момент все проекты поудалял - буду опять пошагово выполнять все действия. В одном из видео твоих курсов уже сталкивался с подобной проблемой, но она как-то решилась после добавления дополнительных ролей. Мне кажется, они внесли изменения в одну из ролей на видео, убрав run.services.get и поставив эту команду в другую роль.
@Д-рВедьмак
@Д-рВедьмак 2 жыл бұрын
​@@ADV-IT У тебя шикарный канал !!! Практически все, что я выучил на практике из облачных технологий - благодаря тебе. Огромное спасибо !!! Кратко, доступно, а главное, это можно самому попробовать сделать и практически все получается с первого раза :) РЕСПЕКТ !!!
@Д-рВедьмак
@Д-рВедьмак 2 жыл бұрын
@@ADV-IT P.S. И это при том, что данная область не является моей профессией (я все начал изучать с нуля по ютубу), и мое изучение лишь на уровне хобби или простого интереса :)
@VINT-IT
@VINT-IT 2 жыл бұрын
На последнем этапе 2:DEPLOY выдает вот такую ошибку: Already have image (with digest): gcr.io/cloud-builders/gcloud ERROR: (gcloud.run.services.update) PERMISSION_DENIED: Permission denied on resource project prod. - '@type': type.googleapis.com/google.rpc.Help links: - description: Google developer console API key url: console.developers.google.com/project/prod/apiui/credential - '@type': type.googleapis.com/google.rpc.ErrorInfo domain: googleapis.com metadata: consumer: projects/prod service: run.googleapis.com reason: CONSUMER_INVALID Денис HEEELP ! Все мозги поломал... (проект называется prod для прод сбоки)
@ADV-IT
@ADV-IT 2 жыл бұрын
Внимательно посмотри какие permissions ты добавил, я же все описал подробно, Вот тут тоже описал: github.com/adv4000/gcp-cicd-cloudruns
@VINT-IT
@VINT-IT 2 жыл бұрын
@@ADV-IT Денис, в том то и дело что у тебя все предельно понятно расписано и показано ! Проверял не раз. Прошлый урок тоже на деплое замедлился так и не поборол. Кто-то до меня что-то похожее писал. Что-то не то с этим фри аккаунтом. Больше пяти проектов не дают завести. Удалить хотел и по новой с нуля - фиг они висят в статусе удалены сутки, новые не дают заводить.
@VINT-IT
@VINT-IT 2 жыл бұрын
ФУУХ 2 дня на пермишены убил )))) А дело было вовсе не в них. В файле cloudbuild.prod.yaml в нижних параметрах нужно было вводить ID проекта а не имя. _SERVICE_PROJECT : prod-367714 имя у него в моем случае просто prod. Денис в своих примерах спецом создавал проекты с ID равным названию, но по дефолту это не так. А я 2 дня в пермишенах копался ))). Зато уже ас теперь в них ))). Да и кстати билд с версией образа ubuntu:21.04 фэйлится на момент написания - поменял его в докефайле на ubuntu:22.04. Спасибо всем за внимание и Денису таксама !
@ADV-IT
@ADV-IT 2 жыл бұрын
@@VINT-IT Молодец, рад что всё получилось!
@Dinasdas
@Dinasdas 2 жыл бұрын
@@VINT-IT спасибо тебе добрый человек, 3 дня убил на выдачу прав, весь гугл вдоль и поперек перечитал, все делаю как написано, а оказалось что дело в id project. Хотя на предыдущем уроке уже была такая же проблема и тоже было дело в названии проекта, но там как то явно была ошибка и получилось быстрее решить.
Правильный подход к детям
00:18
Beatrise
Рет қаралды 9 МЛН
Thank you Santa
00:13
Nadir Show
Рет қаралды 59 МЛН
[BEFORE vs AFTER] Incredibox Sprunki - Freaky Song
00:15
Horror Skunx 2
Рет қаралды 19 МЛН
How I deploy serverless containers for free
6:33
Beyond Fireship
Рет қаралды 570 М.
Top 8 Docker Best Practices for using Docker in Production
18:27
TechWorld with Nana
Рет қаралды 313 М.
How to deploy a dockerized FastAPI to Cloud Run
22:22
COMMAND
Рет қаралды 4,7 М.
How to build and push a docker image | Google Cloud Artifact Registry
11:22
Github Actions - Введение в CI/CD
1:56:11
Владилен Минин
Рет қаралды 87 М.
CI/CD для Serverless приложений
44:37
Yandex Cloud
Рет қаралды 3,2 М.
CI CD наглядные примеры
22:08
Ulbi TV
Рет қаралды 299 М.