Bash + Docker Compose. Простой деплой docker приложений на простой Ubuntu сервер

Поділитися
Вставка
  • Опубліковано 18 січ 2025

КОМЕНТАРІ • 39

  • @volatilnost
    @volatilnost 10 місяців тому +3

    Это просто мегаполезное видео. Фактически по нему и дополнительному гуглению понял как работает docker, как разворачивать приложение, и насколько это все интересно. И в итоге сделал свой петпроджект. Автору бесконечное спасибо. За 20 минут очень понятно, доступно все объяснил.

    • @amorev
      @amorev  10 місяців тому

      Прекрасно! Очень рад, что видео понравилось и оказалось полезным! Спасибо огромное за комментарий!

  • @georgestatefield
    @georgestatefield 2 роки тому +5

    Живописно!
    побольше бы таких уроков...

  • @КириллИнтеров
    @КириллИнтеров Рік тому +1

    Спасибо большое, переиспользовал некоторые кучки кода, с первого раза поднял личный "прод".
    Респект

    • @amorev
      @amorev  Рік тому

      Очень рад! Спасибо за комментарий!

  • @hs-pp3xh
    @hs-pp3xh 3 роки тому +1

    Продолжай в этом духе!

  • @evgedoo
    @evgedoo 3 роки тому +1

    А не думали начать использовать ansible?

    • @amorev
      @amorev  3 роки тому +1

      Не только думали) мы его используем. Но для данного видео решил пойти путем bash скрипта для настройки окружения, чтобы наглядно показать тем, кто вообще не в теме ansible. Вы - не первый, кто мне это уже написал и похоже надо будет сделать подобный видос про то, как у нас это устроено при ansible.
      Спасибо за обратную связь!

  • @whicencer8819
    @whicencer8819 Рік тому

    Здравствуйте! Я новичок, наткнулся на ваше видео и мне понравилось. Но есть пара вопросов:
    1. как деплоить бота (телеграм) на сервер вместо сайта?
    2. Что делать если этих ботов может быть много, и я хочу запустить их независимо друг от друга на одном сервере?
    Спасибо!

    • @amorev
      @amorev  Рік тому +2

      1. Также можно деплоить. Просто вам не нужен http порт, если вы не собираетесь работать через webhook
      2. можете таких копий через docker запускать сколько угодно много на одном сервере, пока хватает диска, памяти и процессора

  • @dd-pe5dp
    @dd-pe5dp Рік тому +1

    очень интересно, жаль шо ниче не понятно

  • @paulmixable
    @paulmixable 3 роки тому +4

    Норм схема👍 но можно улучшить.
    В docket way правильнее сначала собирать образы и только потом их деплоить. Gitlab CI + Gitlab Container registry.

    • @amorev
      @amorev  3 роки тому +2

      Ну по сути мы сразу собираем и "деплоим" на тот же сервер) Оно так получается быстрее, чем сначаа залить в registry а потом оттуда пуллить. На некоторых проектах делаем именно так, чтобы сервер не грузить сборкой, а на мелких проектах отлично едет и такой вариант

  • @kyrylochornobryvets3385
    @kyrylochornobryvets3385 Рік тому

    Объясни пожалуйста почему service1 и service2 висят на одинаковом порту 3001? Заранее спасибо.

    • @amorev
      @amorev  Рік тому +2

      Потому что они находятся в изолированной Docker сети и не выходят за ее пределы. Я не прописываю ничего в ports блок. А общаются между собой они уже по 3001 портам (потому что открыли 3001 внутри сети через expose)

  • @Роман-к1ю5ь
    @Роман-к1ю5ь Рік тому +9

    Если вы делаете свой первый деплой через Docker, можете не смотреть это, вы ничего не поймете.

  • @arturioup8582
    @arturioup8582 2 роки тому

    столкнулся с проблемой. сделал все как показано и по шпаргалке с гита все запустилось но запросы никак не проходят есть идеи что я мог сделать не так? докре пс пишет что все работает да и телеграм бот который запускаеться в контейнере отрабатывает. но я так понимаю nginx не пропускает запросы так как без проксирования запросы проходят

    • @amorev
      @amorev  2 роки тому

      Вы можете написать мне в личке в Telegram - @amorevbot и я подскажу) просто по вашему сообщению подсказать вам врядли смогу)

  • @llwebstylell242
    @llwebstylell242 2 роки тому

    А если например в бд в ручную нужно что-то поменять , как быть ?

    • @amorev
      @amorev  2 роки тому +2

      ua-cam.com/video/GBx3KEcuKFA/v-deo.html я в этом ролике показывал как я это делаю через туннели. Можно в phpstorm настроить подключение или любой другой проге, которая работает PG

    • @llwebstylell242
      @llwebstylell242 2 роки тому

      @@amorev там вы рассказываете про туннели, а я как раз таки спрашивал про pgadmin или phpmyadmin, про эти платформы которые администрируют субд, как с ними быть ? если их так же в контейнере запускать то они будут доступны всем, нужно закрывать тоже там доступ ко всему этому ? хотелось бы про это узнать

    • @llwebstylell242
      @llwebstylell242 2 роки тому

      @@amorev всё же пересмотрел пару раз видео, и если я правильно понял то благодаря туннелям я могу со своего компа запустить например тот же phpmyadmin или pgadmin и подключиться к контейнеру к субд ? я правильно понял этот момент в целом ?

    • @amorev
      @amorev  2 роки тому +2

      ​@@llwebstylell242 о. интересный вопрос. Ну, во-первых, на этих интерфейсах тоже есть авторизация. Плюс можно добавить basic авторизацию на уровне HTTP в nginx-reverse-proxy. Но, если честно, в бою такие решения очень очень выглядят опасно - забрутфорсят.
      Если критически важен phpmyadmin, то я бы его запустил внутри и через docker-hostmanager и ssh туннель уже подключался на него.
      Благодарю за вопрос!

    • @amorev
      @amorev  2 роки тому +2

      @@llwebstylell242 Вы поняли почти правильно да. Я бы сделал так - на сервере запустил phpmyadmin, но не открывал бы его порт внешнему миру. Далее через ssh туннель сделал бы проброс порта phpmyadmin (через его домен в докер сети и docker-hostmanager) и дальше уже на своем компе подключался бы следующим образом:
      1. Включил туннель со своего 8080 порта на 80 порт phpmyadmin на удаленной машине.
      2. У себя в браузере открыл бы адрес localhost:8080 и работал бы с phpmyadmin как будто он стоит локально

  • @apacheMax
    @apacheMax Рік тому

    что за хост, у которого брал сервак на убунту, а то я взял и у меня рут прав не было, даже не поигрался с докером

    • @amorev
      @amorev  Рік тому

      хм. вообще где угодно дают хост с рутом..
      Странно вообще без рута давать хост. Даже sudo не работает?
      Так беру обычно vds.selectel.ru или hetzner

    • @apacheMax
      @apacheMax Рік тому

      @@amorev вообще ничего не работает с sudo, чтобы что-нибудь пулнуть из докерхаба нужно зарегаться, а чтобы регнуться нужно обновить докер а без судо нельзя это сделать

    • @sergey8513
      @sergey8513 Рік тому

      Может у вас был сервак с Debian?

  • @NoNameEtcDot
    @NoNameEtcDot Рік тому

    Дружище, помоги с настройкой простого сервака, я через докер компоуз делал, проблема в том что локально на существующую базу поднимается норм, а вот удаленно, беда, пробую поднять все меня не пускает, фатал ерорр не находит базу, смотрел через docker inspect, порт есть, а вот айпишник пустое поле

    • @amorev
      @amorev  Рік тому

      а сама база запущена на том же сервере?

  • @daniil4299
    @daniil4299 3 роки тому +1

    Зачем Ubuntu на сервер, если есть Debian?

    • @amorev
      @amorev  3 роки тому

      Так сложилось исторически. Так то и на Debian все тоже самое можно сделать:)

    • @dd-pe5dp
      @dd-pe5dp Рік тому

      убунта популярна

  • @vadims2236
    @vadims2236 2 роки тому

    up -d не демон, а детач

    • @amorev
      @amorev  2 роки тому

      ага) просто он запускается в формате демона)

  • @v.lavrinovics1970
    @v.lavrinovics1970 2 місяці тому

    Материал интересный, но автор видео так спешит, не понятно куда.

    • @amorev
      @amorev  2 місяці тому

      Спасибо за коммент! Со скоростью речи работу веду, но получается далеко не идеально. Работаю над этим)