@docker_ru

Страница 955 из 1375
Michael
05.01.2019
13:20:47
Привет, подскажите. У меня asp.net core приложение которое подключается к postgresql. Если я свое приложение запускаю в докере, оно сможет обращаться по прежнему к базе данных, что нужно дополнительно прописывать? Нужно базу данных реализовывать как-нибудь тоже в контейнере?

Petrovich
05.01.2019
13:23:27
лучше базу сдампить щас

и создать новый контейнер с postgresql с залитым дампом

Google
Petrovich
05.01.2019
13:23:42
и приложение отдельным сервисом повесить рядом

Petrovich
05.01.2019
13:24:30
postgres: restart: always image: postgres:9.6.2-alpine expose: - "5432" environment: - POSTGRES_USER=shizoid - POSTGRES_PASSWORD=shizoid - POSTGRES_DB=shizoid volumes: - postgresql-volume:/var/lib/postgresql/data - ./init:/docker-entrypoint-initdb.d/ Вот пример постгриса с дампом

Michael
05.01.2019
13:26:22
получается будет 2 контейнера, один для бд другой для моего приложения?

Petrovich
05.01.2019
13:26:29
да

в одной изолированной сетке, если ты через докер-компоуз соберешь

разве это ли не чудо?

Michael
05.01.2019
13:27:33
у меня цель, выложить это в heroku, там принцип такой же не знаете? 2 отдельных контейнера и мы общяемся между ними?

Konstantin
05.01.2019
13:28:24
2й день хероким( не ходите туда

Petrovich
05.01.2019
13:28:36
Херока это про другое

Там кстати все просто. Заливаешь приложение и тебе в переменной среде дают порт, который ты слушаешь и ссылку на базу данных

Дамп в браузере загружаешь и живёшь

Michael
05.01.2019
13:31:03
к сожалениею многое не понял. Хотел найти бесплатный хостинг для хоби проекта, с базой данных. Вышел на хероку. С контейнерами я вообще не знаком.

Google
Konstantin
05.01.2019
13:32:03
к сожалениею многое не понял. Хотел найти бесплатный хостинг для хоби проекта, с базой данных. Вышел на хероку. С контейнерами я вообще не знаком.
хероку - ненужный и оверзамусоренный прожект, который особо нигде и не заюзать и никто не юзает. Изучать его не стоит. Docker-compose + vps

M
05.01.2019
13:32:58
Petrovich
05.01.2019
13:33:12
Я кстати не уверен что на хероку есть асп нет

Konstantin
05.01.2019
13:34:12
Спасибо, поищу еще халявные варианты... Может подскажете?
Локально? ) а вообще впс 2-5 евро в месяц

Petrovich
05.01.2019
13:35:07
Можно написать не на аспе и зоститься на хероку

Michael
05.01.2019
13:35:33
В хероку нет контейнеров
Я залил свое asp.net core на хероку и оно работает. Пробовал через контейнеры и через их гит репозиторий. Сработал последний вариант, и теперь я не уверет использовались контейнеры или нет, т.к. я перед этим все настроил для контейнеров.

Michael
05.01.2019
13:37:17
использовать базу данных у меня проблемы.

Petrovich
05.01.2019
13:37:52
Зайди в браузере в хероку и подключи постгрис к приложению

И у тебя в переменной среды появится ссылку на твою базу, которое ты в приложении будешь использовать

Michael
05.01.2019
13:49:56
спасибо, действительно я не использую контейнеры в heroku, хотя такая возможность есть. Я с ней не разобрался, вместо этого я использую heroku git и dotnetcore buildpack. Буду разбираться дальше с бд.

Petrovich
05.01.2019
13:52:24
Никогда этим не пользовался

Я на хероку в основном простеньких ботов для телеги заливаю. Есть один с базой даже

Konstantin
05.01.2019
13:53:33
Ребят, не забываем, тут про докер

Petrovich
05.01.2019
13:54:44
Человек и интересуется как на хероку докер образы заливать

Илья
05.01.2019
14:10:29
такой вопрос, если смаунтить папку в контейнере - на пустую папку извне, данные из контейнера же должны все снаружи оказаться? или же пустая папка перезапишет то что в контейнере

Google
Илья
05.01.2019
14:20:47
понял, спасибо

у меня как раз с образом проблема - пустая папка перезаписывает данные внутри

Павел
05.01.2019
14:23:02
у меня как раз с образом проблема - пустая папка перезаписывает данные внутри
Почти тоже самое как бы ты примонтировал в системе новый диск в /home

Илья
05.01.2019
15:01:54
я просто не совсем понимаю как правильно процесс организовать, допустим есть два репозитория - фронт и бек, в них настроены докерфайлы и gitlab ci который при пуше собирает образы и пушит их в registry. затем процесс деплоя на конечном сервере - пулим образы с registry, запускаем через docker compose и вроде как все

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

бред какой то прям зачем я делал все эти образы если мне еще и код надо держать

Petrovich
05.01.2019
15:05:59
Хороший вопрос

Petrovich
05.01.2019
15:13:17
А почему нельзя в образ внешний код всунуть?

Максуд
05.01.2019
15:13:56
?

Petrovich
05.01.2019
15:14:44
потому что не сунется
какой плохой код

Илья
05.01.2019
15:14:54
хотелось бы остаться в рамках абстракции контейнеров/образов и не ковырять исходный код приложений

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

Александр
05.01.2019
15:16:10
Код не должен лежать на хосте

Вообще, ничего не должно лежать на хосте

Илья
05.01.2019
15:17:01
?

то есть только образы/контейнеры?

Александр
05.01.2019
15:19:14
Да. Конфиги/сикреты в специальных для этого предназначенных объектах. В кубере и сворме они есть

Google
Александр
05.01.2019
15:20:55
Файлы пользователей - примонтированы из nfs на худой конец, чаще всего достаточно s3 - с ним и монтировать не надо

Логи - слать в какой-нибудь грейлог

Чтобы в любой момент можно было добавить ноду и горизонтально замасштабировать. Или прибить ноду

Илья
05.01.2019
15:22:56
а если у меня простенький проект и всего два сервера(а пока и вовсе один) и до кубернетиса я пока не дорос? ?

Stefan
05.01.2019
15:28:02
а если у меня простенький проект и всего два сервера(а пока и вовсе один) и до кубернетиса я пока не дорос? ?
если скейлить не нужно будет, то компоузы раскидывай, если нужно то уж сворм сделай да и всё

shota
05.01.2019
15:36:19
всем здарова, я написал статью про докер для начинающих, правда по английски... если кому то интересно гляньте: https://medium.com/@sjolbordi/comprehensive-introductory-guide-to-docker-vms-and-containers-4e42a13ee103

shota
05.01.2019
15:49:25
конкретно?

Konstantin
05.01.2019
15:51:02
всем здарова, я написал статью про докер для начинающих, правда по английски... если кому то интересно гляньте: https://medium.com/@sjolbordi/comprehensive-introductory-guide-to-docker-vms-and-containers-4e42a13ee103
EXPOSE command will make exposed port accessible in container, by default all ports are inaccessible for security reasons. это тоже шляпа. неверно + я бы рекомендовал вообще забыть про Expose, только вводит в заблуждение, по сути - мета инструкция(документирует только)

конкретно?
ну там нет никаких swarm образов, ничего качать не нужно. Сам же пишешь вначале, что встроенно, а потом -- "просто надо скачать"

смешал Docker Swarm и Docker Swarm mode

shota
05.01.2019
15:53:15
встроено в client https://hub.docker.com/_/swarm

Stefan
05.01.2019
15:55:10
вообще не нужно, глянь что в доке пишется
та я обычно вообще и не использовал его

только в компоузах

Konstantin
05.01.2019
15:55:50
смотри на это как на LABEL, не более. ХЗ почему не вынесли её в LABEL? Backward compatible наверное, некоторые системы\оркестраторы тащат порт приложения из Expose

shota
05.01.2019
15:55:55
"The EXPOSE instruction does not actually publish the port. It functions as a type of documentation between the person who builds the image and the person who runs the container"

Konstantin
05.01.2019
15:56:19
только в компоузах
в композах юзаешь expose?

Google
Stefan
05.01.2019
15:56:59
в композах юзаешь expose?
ну типо если нужно наружу вытащить порт, то по привычке просто ports: -5000:5000

Stefan
05.01.2019
15:57:40
это не expose же, это publish для run
так вот я и не понимал разницу думал это одно и тоже, только в разных реализациях

Konstantin
05.01.2019
15:58:06
"The EXPOSE instruction does not actually publish the port. It functions as a type of documentation between the person who builds the image and the person who runs the container"
да, у тебя вообще другое описание. И я бы более правильный Dockerfile (bestpractice) закинул, но это уже мелочь

shota
05.01.2019
15:58:41
про EXPOSE верно сказал, спосибо , а про SWARM что не так?

Stefan
05.01.2019
15:58:43
доки блин же есть)
жизнь слишком коротка

Konstantin
05.01.2019
15:58:55
Илья
05.01.2019
15:59:33
shota
05.01.2019
15:59:35
ну там нет никаких swarm образов (image ?) https://hub.docker.com/_/swarm как нет

Stefan
05.01.2019
15:59:46
Konstantin
05.01.2019
15:59:48
про EXPOSE верно сказал, спосибо , а про SWARM что не так?
in order to create a swarm, just like in case of docker registry, you need to pull an image called “swarm” from docker hub, create a container out of it and run it. Docker host that is running a swarm container will be a centralized machine from which all other machines in cluster are managed. Эта часть от легаси сворма

ildar
05.01.2019
16:00:27
жизнь слишком коротка
> Запомните: всего несколько часов попыток и ошибок могут сэкономить вам целых пять минут чтения документации

Страница 955 из 1375