Aleksei
+1
Ilia
Chebyrash
Друзья, такой вопрос. Запускаю redis в контейнере и всё работает. Почему когда я ввожу top в терминале, то вижу redis-server? Хотя все остальные приложения показываются как docker-container.
Evgenii
Это факт, спасибо.
У нас была одна очень мощная железка. Cassandra так устроена, что лучше 8 нод поменьше, чем одна толстая. Разворачивать на голом железе ноды было неудобно и трудоёмко, попробовали докер, немного потюнили и всё получилось
Anonymous
Chebyrash
Anonymous
вообщем такое поведение процесса это нормально.
Anonymous
все таки контейнер это не виртуалка, нет полной изоляции
Aleksei
Anonymous
Как прокинуть порт 3306 с хост-машины в контейнер?
Aleksandr
Anonymous
Anonymous
в доке как написано?
Я нашёл, что предлагают использовать IP машины, на которой запущен MySQL сервер
Aleksandr
Anonymous
Мне нужно, чтобы при обращении из контейнера на порт 3306, запрос перенаправлялся на порт 3306 хоста
Aleksandr
может наоброт?)
Anonymous
Нет. У меня MySQL на хосте, всё остальное - в контейнере
Aleksandr
а, вот оно что
Aleksandr
сложная система. гугли get docker host ip
Anonymous
Проще будет MySQL в отдельный контейнер пихнуть и добавить этот контейнер в одну сеть с контейнерами nginx и apache, контейнер назвать mysql
Anonymous
И пускай при подключении к БД в качестве хоста указывают MySQL
Aleksandr
Anonymous
А можно как-то порт 3306 из контейнера прокинуть во все остальные контейнеры?
Anonymous
(из контейнера с MySQL)
Ринат
в сетке по умолчанию вроде есть доступ
Aleksandr
Ринат
нет, mysql:3306
Ринат
при условии что контейнер назван mysql
Anonymous
нет, mysql:3306
Connect to MySQL from an application in another Docker container
This image exposes the standard MySQL port (3306), so container linking makes the MySQL instance available to other application containers. Start your application container like this in order to link it to the MySQL container:
$ docker run --name some-app --link some-mysql:mysql -d application-that-uses-mysql
Anonymous
https://hub.docker.com/_/mysql/
Artem
линк не нужен когда контейнеры в одной сети
Anonymous
Насколько я понимаю, ключ —link как раз пробрасывает порт в контейнер. Или нет?
Artem
по умолчанию в одной сети все порты контейнеров между собой доступны
Ринат
--link это устаревший способ, помеченный как деприкейт.
Artem
обращаться по имени контейнера + порт
Alik
Ребята, вы не сталкивались с проблемой передачи переменных окружения в контейнер с java? у меня они просто не передаются :(
Aleksandr
Alik
Aleksandr
в неправильном использовании докера. непраивльно передаешь, непраивльно проверяешь. что-то из этого
Evgenii
Aleksandr
show us the code
"Talk is cheap. Show me the code."
- Linus Torvalds
Evgenii
Alexander
Товарищи, я правильно понимаю, что при деплое docker stack команду, которая указана в healthcheck.test выполняет сам докер на железном сервере, где он и работает? Таким образом, если я хочу проверить жизнеспособность своего контейнера, который привязан к порту 8080 на моем железном сервере, команда дожна будет выглядеть как-то так: test: ["CMD", "curl", "-f", "http://localhost:8080"]?
Andrey
Хелсчек внутри контейнера выполняется
Alexander
А, вот как. Спасибо
Igor
Народ подскажите, в какой последовательности происходит - сначала volume подключается потом entrypoint срабатывает или наоборот
Igor
хотелось бы знать, можно ли обновлять данные в VOLUME через entrypoint
Alexey
можно. Сначала подключается volume, потом уже включается контейнер
Igor
Alexey
В целом это возможно. Целесообразность - это уже другой вопрос
Alexey
С другой стороны, где ещё, если не там
Igor
Пример простой - есть Angular - постоянно в Dockerfile собирать все модули - не правильно да и хранить их там тоже смысла нет. При старте, хотелось бы что бы он обновил (если потребуется) node_modules
Igor
)
Ilia
Коллеги подскажите кто-то пользовался https://hub.docker.com/_/postgres/
Igor
увы VOLUME перепишет все данные если ссылается на папку внутри контейнера тем более
Igor
+
Igor
Ilia
9.5.10
Вобщем следую оффиц гайду и кнтейнер сразу отключается
Igor
Ilia
docker run —name arum-postgres -v /home/ab/work/dump:/docker-entrypoint-initdb.d -d postgres:9-alpine
Ilia
в папке ab/work/dump лежит dump.sql
Ilia
через секунду контейнер лежит
Igor
docker run - запуститьконтейнер
—ti - ключ что бы выводил инфу в консоль
—name arum-postgres - имя такое ты дал
-v монтируешь папку
-d - понятно
а задача то какая? какую БД создать? Или как подключиться?
Наверное все же команда другая
docker run —name arum-postgres -v /home/ab/work/dump:/docker-entrypoint-initdb.d -d postgres:9-alpine psql -U dbusername -h arum-postgres
Igor
в конце должна быть команда
Igor
По сути там внутри ничего кроме установленного postgres - это означает что БД не создано, Пользователей тоже нет... просто голый PostgreSQL
Ilia
Ну да и к нему должна быть возможность подключиться извне
Igor
Угу
Igor
кинуть файлик? там все просто
Ilia
Буду брагодарен
Ilia
Хоть в упор не понимаю почему он не запускается
Igor
Igor
Я правда не знаю принято ли в этой конфе кидать файлы
Igor
Положи в любую папку и запусти из нее команду
docker-compose up
Igor
;)
Igor
У тебя винда или линукс?
Ilia
arch
Igor
как запустить в соседней консоли введи docker ps (покажит включенные контейнеры)
Igor
docker volume ls - покажет активные VOLUME
docker volume inspect VOLUMENAME
покажет инфу о том куда именно он положился в системе хостовой (твоей)