@pydjango

Страница 891 из 1273
Davra
26.01.2018
18:52:44
Доброго времени суток, создал модель с TextField'ом, теперь хочу вовыдить только часть текста из того, что хранится в базе, вопрос: как порезать TextField чтобы выводить часть текста?(например с 0 до 30 символа)

Evil
26.01.2018
18:54:25
{{ value|truncatechars:9 }}

Davra
26.01.2018
18:56:02
{{ value|truncatechars:9 }}
оу спасибо)

Tim
26.01.2018
20:18:19
https://djangoforbeginners.com/

Google
Сонячний єнот
26.01.2018
22:24:32
Уже два часа не могу запустить Django на локальном Apache2 ( я знаю о встроенном dev-сервере ), пишет ошибку 500. error.log - https://gist.github.com/SunRaccoon/be3f5b4d91484a8229c02424ce369a62.

Alex
26.01.2018
23:10:37
Все так делаешь? https://docs.djangoproject.com/en/2.0/howto/deployment/wsgi/modwsgi/

Сонячний єнот
26.01.2018
23:11:04
Именно

Alex
26.01.2018
23:12:21
Не может быть

Недавно по нему делал - все ок было

Значит что то не так все же

Сонячний єнот
26.01.2018
23:13:22
Попробую значит ещё раз.

Та ну блин, стандарный даже не ставится

Kostyantyn
26.01.2018
23:44:45
Может сразу как белый человек?

https://habrahabr.ru/post/226419/

Этот гайд точно рабочий, на прошлой неделе проверял

Alexander
27.01.2018
03:00:48
в современных условиях наиболее продвинутый способ доставки сервиса в продакшен - с помощью контейнеров

если вы ещё не умеете пользоваться Docker’ом или другими системами такого рода (rkt, CRI-O) - научитесь

Google
Alexander
27.01.2018
03:02:04
думаю, через некоторое время неумение работать с контейнерами будет означать профнепригодность

Kubernetes захватывает мир

Evil
27.01.2018
03:06:53
думаю, через некоторое время неумение работать с контейнерами будет означать профнепригодность
там где эти контейнеры реально нужны, есть дев опсы или накрайняк лид который может их наладить, остальным не нужны

Alexander
27.01.2018
03:08:33
контейнеры нужны чтобы можно было откатиться назад, например, если ты обновил uWSGI при обновлении Ubuntu, а оно сломалось и не хочет запускать больше проекты, это реальная история

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

Evil
27.01.2018
03:10:11
контейнеры нужны чтобы можно было откатиться назад, например, если ты обновил uWSGI при обновлении Ubuntu, а оно сломалось и не хочет запускать больше проекты, это реальная история
что-то очень специфичное, контейнер при правильной настройке и так не обновится если оно там на сборке с ерором падает

Alexander
27.01.2018
03:11:28
ну, почему, собраться может нормально вот кейс из реальной жизни, в эпоху до контейнеров - я обновлял Ubuntu, после обновления упал uWSGI из-за каких-то либ не тех версий, система обновилась ок, uWSGI стартовался ок, но была ошибка, он фактически не работал

то есть он не то что не билдился, билдился, он даже стартовался

но при этом фактически “кино не показывал”

Evil
27.01.2018
03:12:47
ну я и говорю что-то прямо такое специфическое

Alexander
27.01.2018
03:13:50
Есть мысль, что этим полезность контейнеризации не органичивается)
конечно, просто это достаточная причина, чтобы вообще всем переходить на контейнеры, даже если 1 сервер, а не 100, то есть вообще всем, а не только крупным компаниям

контейнеры убирают страх перед обновлениями на 99%

Andrey
27.01.2018
03:14:31
Дженкинс убирает страх перед обновлениями на 100%.

Или какого рода обновления имеются в виду?

Alexander
27.01.2018
03:14:56
обновления системы

Evil
27.01.2018
03:15:00
конечно, просто это достаточная причина, чтобы вообще всем переходить на контейнеры, даже если 1 сервер, а не 100, то есть вообще всем, а не только крупным компаниям
причина честно говоря никакая, с трудом представляю что там такое могло произойти если в рекваременте все пакеты с фиксированными версиями

Alexander
27.01.2018
03:15:01
Ubuntu в данном случае

Andrey
27.01.2018
03:15:02
А, ок

Контейнеры не панацея. И там можно всяких дел наворотить. Да и без них можно жить.

Google
Alexander
27.01.2018
03:16:30
собственно, система чистая, там только Docker, ну то есть обновления уже кроме докера сломать ничего не могут, а ломают они докер или нет - легко проверить, есть ли совместимость или нет, это просто 1 набор пакетов

а сам проект, разумеется, надо тестировать на CI

и тут тоже могут помочь контейнеры, чтобы 100% воспроизвести среду выполнения

например, тот же Pillow зависит много от чего в системе

Evil
27.01.2018
03:18:36
кроме пакетов питона есть системные пакеты, пакеты питона так или иначе с ними связаны
ну как бы контейнер не таскает за собой какую-то зафриженную версию оси

тупо запускается поверх и юзает все из шареда хоста

Alexander
27.01.2018
03:18:59
контейнер запускается из образа, а образ это и есть зафриженная версия оси)

в том-то и дело, что нет ?

от хоста только ядро и всё

абсолютно все версии либ в контейнере свои, они из образа

и никаким образом не связаны с либами, которые на сервере

Alexander
27.01.2018
03:20:21
в этом и фишка, у проекта всегда те же самые либы, и на CI, и у разработчика на компе и на продакшене

думаю, многие скептически относятся к контейнерам потому что не до конца понимают, принцип их работы, тут всё просто) 1. у вас есть некий конфиг/скрипт, который билдит образ контейнера, в докере это Dockerfile в нём вы указываете некий начальный образ, например, образ чистой ОС, например, дебиана или альпин линукса (примерно то же самое, что у вас на сервере после установки системы) дальше идут некий шаги, RUN apt-get install … && python3 -m pip install … дальше идёт указание того, что именно нужно запустить после создания контейнера из этого образа, CMD [“uwsgi”, …] 2. вы делаете docker build (или не вы, а CI) и у вас идёт сборка образа, то есть скачивается образ с чистой операционной системой, туда ставятся все ваши зависимости, системные и питона, туда копируется содержимое вашего проекта 3. вы запускаете новый контейнер из образа, указываете всякие настройки, доступы к базе данных, порты, которые нужно открыть, монтируете некие директории с хоста 4. вы тестируете код, запустив свои тесты внутри контейнера 5. если зелёный статус вы вешаете некий тег на этот образ и пушите его в репозиторий образов, по аналогии с git’ом 6. где-то на сервере этот образ скачивается и из него запускается контейнер, можно запустить сразу несколько контейнеров из 1 образа или несколько контейнеров из образов разных версий и легко переключаться между ними с помощью балансировщика (то есть сначала запускаем контейнер с новой версией, только потом уже переключаем туда трафик, чтобы люди шли в контейнер с новой версией)

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

Alexander
27.01.2018
03:43:09
то есть вместо [чистая ОС] -> пакет версии 1.0 -> пакет версии 1.1 будет [чистая ОС] -> пакет версии 1.0, а потом [чистая ОС] -> пакет версии 1.1

Evil
27.01.2018
03:43:36
ядро если обновили

Google
Evil
27.01.2018
03:43:46
докер же не запускает свои ядра

Alexander
27.01.2018
03:44:00
докер выпускает совместимые с Ubuntu LTS версии

как только такая версия есть, вы можете смело обновляться

Evil
27.01.2018
03:44:12
и тупо какая-то утилита со старого образа не хочет не может работать с новым

нет спасибо

Alexander
27.01.2018
03:44:30
проблем с ядром нет

Admin
ERROR: S client not available

Alexander
27.01.2018
03:44:36
ну, я в реальной практике с ними не сталкивался

Evil
27.01.2018
03:44:48
lts на убунте начинается с c 3-4 ревизии

Alexander
27.01.2018
03:48:21
у убунты есть 2 типа версий - обычная и LTS, можно использовать только LTS и вообще не обновлять её на другие LTS, там лет 5 вроде поддержка, обновляться только в пределах 1 выпуска ядра двух типов - GA и HWE, HWE - это ядра от более новых версий, бэкпорты своего рода, можно юзать GA

ну и вот Ubuntu LTS с GA-ядрами и докер из их репозитория, обновляться можно не сразу, а через, ну, несколько месяцев после релиза новой версии докера

тогда будет довольно стабильно

вот, а все остальные пакеты они будут в образах, собираться и тестироваться на CI

Evil
27.01.2018
03:50:44
тогда будет довольно стабильно
ну вот, а выше говорили про то что докер прямо повышает отказоустойчивость

Alexander
27.01.2018
03:51:13
так да, повышает, за счёт переноса пакетов с сервера внутрь образа

на сервер ставится только докер и всё

ну, мб системы мониторинга ещё и прочее такое

Evil
27.01.2018
03:51:45
ядро и фс все равно хостовая

Alexander
27.01.2018
03:51:50
да

но часто проблема не с ними, а с тем, кто кто-то накосячил с апгрейд скриптом какого-нибудь пакета

Google
Evil
27.01.2018
03:52:35
ну обновляем убунту с lts на lts процентов 70% что докер крякнет после такого маневра

Alexander
27.01.2018
03:53:28
перед обновлением Ubuntu с LTS на LTS необходимо обновить Docker и убедиться, что новая версия Docker’а поддерживает новую LTS

если да, то ничего не крякнется

просто тормозим контейнеры и обновляем

и всё ок

Evil
27.01.2018
03:54:14
как же его обновишь если в текущей репе он вот такой версии, новые будут в новом lts

Alexander
27.01.2018
03:54:45
обновиться до последней доступной версии для данной LTS

в репозитории Docker’а

(не в репозитории Ubuntu)

Evil
27.01.2018
03:56:27
да, а какая разница, если там ядро и фс ломает что-то в новой

Alexander
27.01.2018
03:57:02
таких ситуаций не было, там ничего не ломается

Evil
27.01.2018
03:57:11
сначала получается надо обновится до новой lts и возможно оно проапдейтит докер, возможно он даже запуститься, но тут 50 на 50

Alexander
27.01.2018
03:57:43
смотри, всё просто

у Ubuntu поддерживаются 2 LTS версии

текущая и старая LTS

и новый докер будет работать и под ту, и под другую версию

он будет в обеих репозиториях

Страница 891 из 1273