Основы Docker. Запускаем приложение на Golang в Docker контейнере.

Поділитися
Вставка
  • Опубліковано 14 лис 2024

КОМЕНТАРІ • 40

  • @drnovikov
    @drnovikov 2 роки тому +13

    Я думаю, лучше использовать устоявшийся термин "образ", а не "изображение". Тут смысл не в значении "картинка", а в значении "слепок", "снимок". Disk image -- "образ диска".

  • @КириллКутузов-з2п
    @КириллКутузов-з2п 3 роки тому +6

    Отличный урок! Всё отлично разъяснил. Молодец! И огромное спасибо.
    Но хотелось бы услышать о способах "закинуть" бинарник golang'а в контейнер.

  • @abubakrjuraev1816
    @abubakrjuraev1816 3 роки тому +14

    Максим, спасибо за видео.
    Мне нравится ваше творчество. Продолжаете в этом духе надеюсь ещё будут новые видосы.

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

      Спасибо большое!
      Это мои первые попытки создания контента для UA-cam, сейчас уже записано много видео, вплоть до конца зимы. Идей хоть отбавляй + постоянно работаю над повышением качества, так что в скором времени на канале будет намного больше интересных видео!

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

    Максим, спасибо за видосы!
    Было бы классно получить обзор goland, его возможности и плюшечки.

    • @MaksimZhashkevych
      @MaksimZhashkevych  4 роки тому +1

      На очереди публикации уже стоит видео "Основы Go за 30 минут" :) Будет на канале через 2 недели

    • @123larisa123
      @123larisa123 4 роки тому

      @@MaksimZhashkevych я про golanD ide

    • @MaksimZhashkevych
      @MaksimZhashkevych  4 роки тому

      @@123larisa123 понял) спасибо за идею, возможно запишу подобное видео

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

    Спасибо, продолжай дальше!

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

    Более подробное и обновленное видео по Docker
    ua-cam.com/video/KPlYP_qmsUg/v-deo.html

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

    спасибо большое за видео. очень полезная инфа особенно для таких новичков как я. я бы только хотел предложить если вам не сложно обсуждайте пожалуйста едж кейси, например у меня версия golang 15 а golang:latest уже 16 и я вот сидел пытался понять что не так. Потом если возможно пожалуйста коментируйте флаги например -t сокращение от tag. (aka name). Важно: я за здоровую критику ни в коем случае не возмущаюсь или чтото такое. Пишу это потому что у совершенства нету пределов. Очень благодарен за вашы видео

  • @beksball4457
    @beksball4457 3 роки тому +3

    Ничего не понятно, но очень интересно ..

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

      не говори брат, тупым себя чувствую

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

    Отличные видео. Пожалуй лучшие на рутубе. Скажите пожалуйста, почему следующие видео из плейлиста недоступны для просмотра?

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

      Спасибо! Видео, которые пока не доступны стоят на очереди публикации. В ближайшем времени все будет на канале)

  • @Арлекс-ъ8б
    @Арлекс-ъ8б 4 роки тому +2

    Все работает)

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

    Отличное видео, спасибо.

  • @alexandertsapkov491
    @alexandertsapkov491 4 роки тому +2

    Thanks)

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

    Спасибо

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

    Вопрос. А можно ли не компилировать в контейнере, а загрузить исполняемый файл. Так же загрузить файл в контейнер ubuntu, так как он меньше размером.

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

      Можно, посмотри докерфайлы в этом проекте
      github.com/zhashkevych/jewerly-shop-backend
      Самый легковесный контейнер использует не убунту, а alpine, насколько мне известно

  • @rafmio
    @rafmio Рік тому +1

    Почему "изображение", а не "образ"?

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

    NixOS?

  • @ПавелЛысов-э4в
    @ПавелЛысов-э4в Рік тому

    Можно только из за псайбоя досматривать

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

    ООООчень тихо.

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

    Смотрю уже двадцатое видео, и не понимаю зачем мне нуден Docker 🤣🤣🤣
    Я и так тупо свой код архивирую, кидаю на хостинг, либо на другой локальный сервер, заливаю базу данных (файл sql) и усё. Зач он, я так и не понял...

    • @Аудиокниги-г8д
      @Аудиокниги-г8д 3 роки тому

      Ну так попробуй осилить и прочитать зачем он. Если он тебе не нужен - то зачем вообще пытаться его применять.

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

      просто у тебя только 1 сервер и свой.

    • @Aaaa-jn4bm
      @Aaaa-jn4bm 2 роки тому +4

      Приведу практический пример: в интеграционных тестах, например, если будешь их писать. Пример: в тесте выполняем отправку http запросов с помощью httptest на все возможные ендпоинты сервера, этот сервер работает с БД. В чём же тут пригодился докер ? Возьмём следующую последовательность запросов: 1) Создать пользователя, 2) Отредактировать пользователя, 3) Удалить пользователя. Допустим, мы не используем докер, и у нас возникла ошибка на 2 запросе: тест прекратился и сообщил об ошибке. В чём же тут проблема ? Проблема в том, что 3 запрос не выполнился, и пользователь остался в БД. При последующем запуске теста мы провалимся на 1 шаге, когда попытаемся создать уже существующего пользователя. Использование докера решает эту проблему - он не сохраняет состояния БД после закрытия контейнера. То есть, можно сколько угодно запускать тесты, и не беспокоится об откате изменений в БД, в случае какой-то ошибки в середине теста.
      А если хочешь подойти к вопросу теоретически - посмотри это видео ua-cam.com/video/KPlYP_qmsUg/v-deo.html , или наконец погугли)

  • @ОлегНовиков-с9о
    @ОлегНовиков-с9о 9 місяців тому

    Выдаёт ошибку на третьем шаге/инструкции запуска контейнера:
    > [3/3] RUN go build -o main .:
    0.328 go: go.mod file not found in current directory or any parent directory; see 'go help modules'
    Может кто сталкивался?
    Если создаю файл go.mod то ошибка уже такая:
    > [3/3] RUN go build -o main .:
    0.226 $GOPATH/go.mod exists but should not

  • @Bliznets1992
    @Bliznets1992 2 роки тому +1

    При запуске docker build . на убунте выдает ошибку $GOPATH/go.mod exists but should not
    Сталкивался кто-нибудь? Подскажите, как решить

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

      Пофиксил? Сам столкнулся с такой же проблемой

    • @Bliznets1992
      @Bliznets1992 2 роки тому +1

      @@redlight9557 да, в докер файле просто добавил конкретно строку RUN copy go.mod

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

      @@Bliznets1992 я нашёл такое решение:
      RUN mkdir /app
      ADD . /app
      WORKDIR /app
      RUN go mod download
      RUN go build -o main .
      CMD [“/app/main”]
      Пытаюсь понять, зачем создаётся папка новая и почему оттуда всё работает ок

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

      @@redlight9557 новая папка создаётся потому, что удобнее потом работать с отдельной папкой, а так ты в корень образа закидываешь все файлы, а вдруг тебе ещё что-то надо будет в этот image закинуть

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

      Может кому-то пригодится. Пофиксил, добавив вот вот это после FROM: WORKDIR learn_docker/.