Anonymous
Anonymous
centos тоже теперь уже под крылом redhat'а
Vital
она всегда там была как и федора
Vital
Red Hat Enterprise Linux
Vital
обычно это называют редхатом ))
Daniel
Vital
ну зато он не древний как говно мамонта
Anonymous
Vital
и очень даже стейбл
Vital
дебиан наверно не особо то свежей будет
Roman
это вы тут точно про голанг разговариваете?
Vital
офтопим
Anonymous
Karey
Go -> Docker -> Kernel -> Linux Distributions
Karey
Логичная же цепочка)
Anonymous
скоро на железо перейдем ))
Roman
электроны говно
Roman
фотоны рулят
Roman
*ну чтобы сразу пару уровней перепрыгнуть
Daniel
электроны твои полем отклоняются
Daniel
и у них заряд
Daniel
упс
Daniel
надо же за них топить, а не ругать
Anonymous
Товарищи, подскажите простой способ мониторить файловую систему (пару директорий) на Go, в какую сторону посмотреть
Илья
Igor
Anonymous
Igor
"Inotify — это подсистема ядра Linux"
Igor
А вот выше через библиотек заработает
Anonymous
Спасибо
Anonymous
а ради интереса, чем адаптеры отличаются inotify от fanotify?
Никита
Добрый день. Извиняюсь сразу за offtop, но я не знаю куда обратиться. Хотел изменить место сохранения новых содержимых, но тома не отображаются. Что посоветуете сделать? (кроме снова винды)
Anonymous
1 процесс - 1 контейнер
это не конкретное требование, а рекомендация не лепить в контейнер все подряд.
Есть миллион образов вида а+б, например node+ruby и они вполне юзаются
Each container should have only one concern
Decoupling applications into multiple containers makes it much easier to scale horizontally and reuse containers. For instance, a web application stack might consist of three separate containers, each with its own unique image, to manage the web application, database, and an in-memory cache in a decoupled manner.
You may have heard that there should be “one process per container”. While this mantra has good intentions, it is not necessarily true that there should be only one operating system process per container. In addition to the fact that containers can now be spawned with an init process, some programs might spawn additional processes of their own accord. For instance, Celery can spawn multiple worker processes, or Apache might create a process per request. While “one process per container” is frequently a good rule of thumb, it is not a hard and fast rule. Use your best judgment to keep containers as clean and modular as possible.
If containers depend on each other, you can use Docker container networks to ensure that these containers can communicate.
https://docs.docker.com/engine/userguide/eng-image/dockerfile_best-practices/
Anonymous
Chebyrash
Chebyrash
Round robin на upstream
Konstantin
если несколько микросервисов можно использовать как одну точку входа - раскидывать запросы. удобно
Daniel
Stanislav
LB
Alexander
1 процесс - 1 контейнер
эт тоже не правильно все зависит от архитектуры проекта и назначения сервера. Если там будет только одно приложение и его надо слушать по сокету то выгоднее nginx вместе с приложением в один контейнер запихнуть, чем потом извращаться с монтирванием сокета
Chebyrash
Подскажите пожалуйста. Используют Dokerfile. FROM golang:onbuild
Какая должна быть структура проекта?
Chebyrash
Нигде не могу найти пример.
Daniel
никакая специальная
Chebyrash
А dependencies он сам скачает?
Karey
Кто скачает? Dependencies к чему?
Karey
Системы, Go?
Chebyrash
Которые прописаны в .go
Karey
Возможно меня поправят, но скачивать зависимости в контейнере для Go - не очень хорошая затея.
Chebyrash
А как?
Chebyrash
У меня файл билдится внутри
Karey
В чем цель вообще использования докера в данном случае? Для выкатки или специфической сборки бинарника?
Chebyrash
Всё, заработало )
Chebyrash
Chebyrash
Ковыряюсь с Elastic Beanstalk
Karey
Да, прошу прощения, не посмотрел образ golang:onbuild. Все сам скачает.
Chebyrash
Он просто берет main() из package main?
Karey
Нет, там немного сложней
Karey
This script allows us to take a generic directory of Go source files such as
"/go/src/app" and determine that the canonical "import path" of where that code
expects to live and reference itself is "github.com/jsmith/my-cool-app". It
will then ensure that "/go/src/github.com/jsmith/my-cool-app" is a symlink to
"/go/src/app", which allows us to build and run it under the proper package
name.
Karey
Отсюда - https://github.com/docker-library/golang/blob/master/go-wrapper
Максим
Alexander
через docker-compose всё удобно
эт понятно, по-другому мультиконтейнерную архитектуру никто и не использует (я думаю). Но в моем примере ты бы стал монтировать сокет вместо того чтобы объеденить nginx с приложением в один контейнер ? Если да то зачем ?
Oleg
Karey
+1
Alexander
я описал пример с сокетом
Alexander
а не с портом
Alexander
ну вот случилось так что нужен именно сокет
Karey
С сокетом конечно в одном контейнере
Karey
Впрочем это тоже не сложно, shared volume и вперед
Alex
Доброе утро всем.
Alex
Подскажите в чем проблема.Есть бд в ней связь один-ко-многим.Написал ф-ию func DeleteRecipe(db *sql.DB, id int) (int64, error) {
sql := "DELETE FROM recipe WHERE ID = ? "
stmt, err := db.Prepare(sql)
if err != nil {
log.Fatal(err)
}
defer stmt.Close()
result, err2 := stmt.Exec(id)
if err2 != nil {
panic(err2)
}
return result.RowsAffected()
}
Alex
Но она удаляет только один элемент, а связанные нет. При выполнении sql DELETE FROM recipe WHERE ID = ? в базе все работает
Alex
Т.е удаляет элемент и связанные с ним элементы
Anonymous
_, err = db.Exec("PRAGMA foreign_keys = ON;")
Anonymous
попробуй в начале приписать.
Alex
Anonymous
я же тебе еще вчера об этом говорил ;)
Alex
там проблема в базе была