https://xakep.ru/2019/12/20/vivaldi-ua/
Не самая хорошая тенденция.
Основатель
Подробности про догоняющий темп Opera можно глянуть в видео "Зачем Опере Вебкит, или Опиум для народа — Вадим Макеев"
https://youtu.be/n54sXmUQLBo
Там как раз рассказывают про свои страдания и про костыли, которыми подпирались топовые сайты (репозиторий на гитхабе, наверное до сих пор жив :) )
Не самая хорошая тенденция.
Основатель
Vivaldi Technologies - бывший CEO из Opera Software. А вот Opera ушла с рынка как раз из-за того, что ей постоянно приходилось догонять другие браузеры, делая всё новые и новые костыли для того, чтобы популярные сайты нормально отображались и в их браузеры (а популярные сайты не шли им навстречу и каждые новые изменения ломали отображение в Opera). В общем, очень походит на те же грабли, на которые Opera ещё на движке Presto наступала ранее.Подробности про догоняющий темп Opera можно глянуть в видео "Зачем Опере Вебкит, или Опиум для народа — Вадим Макеев"
https://youtu.be/n54sXmUQLBo
Там как раз рассказывают про свои страдания и про костыли, которыми подпирались топовые сайты (репозиторий на гитхабе, наверное до сих пор жив :) )
YouTube
Зачем Опере Вебкит, или Опиум для народа — Вадим Макеев
Вот такую скромную статистику прислали. Каналу 10 октября исполнился 1 год 🥳
Всех подписчиков поздравляю с наступающим (а может и наступившим 2020 годом).
Этому каналу чуть больше года и я стараюсь выкладывать в него интересные материалы, которые мне попадаются и ещё больше стараюсь выкладывать решения проблем, с которыми мне приходится сталкиваться на работе и дома.
Я надеюсь, что эти материалы несут для вас определённую ценность.
Спасибо вам за то, что читаете этот канал.
Желаю всем вам здоровья, любви, успехов во всех ваших начинаниях, хороших зарплат, адекватного коллектива.
Увидимся в 2020 году 🥳🥳🥳
Этому каналу чуть больше года и я стараюсь выкладывать в него интересные материалы, которые мне попадаются и ещё больше стараюсь выкладывать решения проблем, с которыми мне приходится сталкиваться на работе и дома.
Я надеюсь, что эти материалы несут для вас определённую ценность.
Спасибо вам за то, что читаете этот канал.
Желаю всем вам здоровья, любви, успехов во всех ваших начинаниях, хороших зарплат, адекватного коллектива.
Увидимся в 2020 году 🥳🥳🥳
Forwarded from ∏ρ؃uñçτØρ Øπτµç∑ | 👁🗨››››
ХАКАТОН ПРОФУНКТОРА 17-19 ЯНВАРЯ
Словарь определений:
Команда — от 1 до 5 человек пилящих один проект, из них один капитан
Капитан — автор идеи, презентует проект на демо
Чекпоинт — команда сабмитит текущий прогресс судьям
Судьи — админы профунктора
Проект — что угодно что можно задеплоить или по тегам: telegram, memes, profunctor api, ML, dev tools, whatever
Формат:
17-ого (ПТ) в 21-00 МСК дедлайн заявок команд, LIVE где пересчитываем тимы и стартуем
18-ого (СБ) в 15-00 МСК первый чекпоинт
19-ого (ВС) в 12-00 МСК второй чекпоинт
19-ого в 20-00 Финиш, публикуем ссылки на проекты, LIVE где капитаны презентуют проекты
22-ого судьи совещаются и объявляют победителей
Как подать заявку (идею) ?
Через бота @libmustdie_hackaton_bot
Где?
Все онлайн и ремоут. Команды сами координируют действия и пользуются удобными тулами.
Как найти проект/команду?
Зайти в чат и выбрать идеи из запиненного поста: https://t.iss.one/joinchat/DWka6hBjhmayFl3g0_wv9A
Какие призы?
Уникальные.
Сode of Conduct:
В случае неадеквата: БАН БАН БАН
Еще вопросы:
https://t.iss.one/joinchat/DWka6hBjhmayFl3g0_wv9A
Словарь определений:
Команда — от 1 до 5 человек пилящих один проект, из них один капитан
Капитан — автор идеи, презентует проект на демо
Чекпоинт — команда сабмитит текущий прогресс судьям
Судьи — админы профунктора
Проект — что угодно что можно задеплоить или по тегам: telegram, memes, profunctor api, ML, dev tools, whatever
Формат:
17-ого (ПТ) в 21-00 МСК дедлайн заявок команд, LIVE где пересчитываем тимы и стартуем
18-ого (СБ) в 15-00 МСК первый чекпоинт
19-ого (ВС) в 12-00 МСК второй чекпоинт
19-ого в 20-00 Финиш, публикуем ссылки на проекты, LIVE где капитаны презентуют проекты
22-ого судьи совещаются и объявляют победителей
Как подать заявку (идею) ?
Через бота @libmustdie_hackaton_bot
Где?
Все онлайн и ремоут. Команды сами координируют действия и пользуются удобными тулами.
Как найти проект/команду?
Зайти в чат и выбрать идеи из запиненного поста: https://t.iss.one/joinchat/DWka6hBjhmayFl3g0_wv9A
Какие призы?
Уникальные.
Сode of Conduct:
В случае неадеквата: БАН БАН БАН
Еще вопросы:
https://t.iss.one/joinchat/DWka6hBjhmayFl3g0_wv9A
2020 год наступил. Закончились новогодние праздники. Люди приходят в себя и настраиваются на рабочий лад. Мне наконец-то удалось дочитать книгу «Руководство по DevOps»
(авторы Джин Ким, Патрик Дебуа, Джон Уиллис, Джез Хамбл).
Хотелось сказать о ней несколько предложений.
Книга очень ярко отражает боль различных команд — разработки, эксплуатации и информационной безопасности. Одна из главных проблем — отсутствие взаимодействия. Для этого предлагаются различные варианты решения подобных затруднений. Также большое количество примеров в стиле «как было-как стало» в контексте конкретных компаний. Многие проблемы могут оказаться для вас уже пройденным этапом, либо это может быть то состояние, в котором находится ваша компания в текущий момент.
В книге присутствуют ссылки на материалы, которые помогут развиваться дальше в мире IT.
Авторы помогают взглянуть на процессы с различных сторон — стороны бизнеса, разработки, эксплуатации, тестирования и информационной безопасности.
P.S. После прочтения приходит понимание, что люди, развивающие методологию DevOps в компании, как раз являются связующим звеном между тем же отделом разработки и эксплуатации. И навык нахождения компромиссов в данной ситуации крайне необходим для того, чтобы предложить простое и лаконичное решение.
Советую к прочтению тем, кто врывается в мир DevOps и тем, кто хочет взглянуть на процессы разработки и доставки продукта бизнесу с разных сторон.
(авторы Джин Ким, Патрик Дебуа, Джон Уиллис, Джез Хамбл).
Хотелось сказать о ней несколько предложений.
Книга очень ярко отражает боль различных команд — разработки, эксплуатации и информационной безопасности. Одна из главных проблем — отсутствие взаимодействия. Для этого предлагаются различные варианты решения подобных затруднений. Также большое количество примеров в стиле «как было-как стало» в контексте конкретных компаний. Многие проблемы могут оказаться для вас уже пройденным этапом, либо это может быть то состояние, в котором находится ваша компания в текущий момент.
В книге присутствуют ссылки на материалы, которые помогут развиваться дальше в мире IT.
Авторы помогают взглянуть на процессы с различных сторон — стороны бизнеса, разработки, эксплуатации, тестирования и информационной безопасности.
P.S. После прочтения приходит понимание, что люди, развивающие методологию DevOps в компании, как раз являются связующим звеном между тем же отделом разработки и эксплуатации. И навык нахождения компромиссов в данной ситуации крайне необходим для того, чтобы предложить простое и лаконичное решение.
Советую к прочтению тем, кто врывается в мир DevOps и тем, кто хочет взглянуть на процессы разработки и доставки продукта бизнесу с разных сторон.
Наступивший год уже приносит свои плоды.
У канала уже аудитория в 100 подписчиков (101 на момент публикации).
Всем большое спасибо за то, что присоединились к моему каналу и читаете его. Каждый новый подписчик мотивирует продолжать заниматься развитием канала.
В этом году постараюсь постить больше авторского контента, который, я надеюсь, будет полезным для вас.
P.S. Большое спасибо админам @libmustdie за упоминанием моего канала в своём посте.
У канала уже аудитория в 100 подписчиков (101 на момент публикации).
Всем большое спасибо за то, что присоединились к моему каналу и читаете его. Каждый новый подписчик мотивирует продолжать заниматься развитием канала.
В этом году постараюсь постить больше авторского контента, который, я надеюсь, будет полезным для вас.
P.S. Большое спасибо админам @libmustdie за упоминанием моего канала в своём посте.
Если работаете с Powershell (я использую версию 5.1), то вас не должно удивлять следующее поведение:
Тут все нормально, это массив
Но вот, если вы создаете переменную вот так:
То перед вами уже строка и обращение по индексам идет уже по-другому
Если все-таки хочется сделать массив из строк, то можно воспользоваться следующей конструкцией:
$VAR="123","456"
$VAR
123
456
$VAR[0]
123
$VAR[1]
456
Тут все нормально, это массив
$VAR.GetType()
IsPublic IsSerial Name BaseType
-------- -------- ---- --------
True True Object[] System.Array
Но вот, если вы создаете переменную вот так:
$VAR="123"
$VAR[0]
1
$VAR[1]
2
$VAR[2]
3
То перед вами уже строка и обращение по индексам идет уже по-другому
$VAR.GetType()
IsPublic IsSerial Name BaseType
-------- -------- ---- --------
True True String System.Object
Если все-таки хочется сделать массив из строк, то можно воспользоваться следующей конструкцией:
$VAR=$VAR.Split("`n")
$VAR.GetType()
IsPublic IsSerial Name BaseType
-------- -------- ---- --------
True True String[] System.Array
$VAR[0]
123Для сдающих сертификацию от RedHat может пригодиться данный момент, дающий скидку 50% на Red Hat Learning Subscription:
QUESTION: Can a Red Hat Certified Architect (RHCA) purchase the Red Hat Learning Subscription at a discount? Are there discounts for other levels of Red Hat Certified Professionals?
ANSWER: Yes, there will be a 50% discount offered for current RHCAs. At this time this discount is exclusive to RHCAs. We do not offer any discounts for other levels of Red Hat Certified Professionals.
Про Red Hat Learning Subscription подробнее по ссылочке:
https://www.redhat.com/en/resources/learning-subscription-faq
QUESTION: Can a Red Hat Certified Architect (RHCA) purchase the Red Hat Learning Subscription at a discount? Are there discounts for other levels of Red Hat Certified Professionals?
ANSWER: Yes, there will be a 50% discount offered for current RHCAs. At this time this discount is exclusive to RHCAs. We do not offer any discounts for other levels of Red Hat Certified Professionals.
Про Red Hat Learning Subscription подробнее по ссылочке:
https://www.redhat.com/en/resources/learning-subscription-faq
Redhat
Red Hat Learning Subscription FAQ: On-demand training for IT success
Learn how Red Hat Learning Subscription can help your teams fill skills gaps.
docker-compose для официального образа Atlassian Confluence и использованием БД PostgreSQL и nginx в качестве реверс-прокси.
На днях постараюсь всё это оформить в виде Github-репозитория в и README.md указать больше подробностей.
На днях постараюсь всё это оформить в виде Github-репозитория в и README.md указать больше подробностей.
version: '2'
services:
db:
image: postgres:11
volumes:
- postgresqldata:/var/lib/postgresql/data
environment:
- POSTGRES_PASSWORD=YOURSTRONGPASSWORD
- POSTGRES_USER=confluence_user
- POSTGRES_DB=confluence_db
- POSTGRES_ENCODING=UNICODE
- POSTGRES_COLLATE=utf8
- POSTGRES_COLLATE_TYPE=utf8
logging:
driver: "json-file"
options:
max-size: "500k"
max-file: "50"
container_name: postgresql-confluence
restart: always
networks:
- confluencenet
confluence:
image: atlassian/confluence-server:6.8.3-adoptopenjdk8
volumes:
- confluencedata:/var/atlassian/application-data/confluence
container_name: confluence
networks:
- confluencenet
environment:
- ATL_DB_TYPE=postgresql
- "ATL_JDBC_URL=jdbc:postgresql://db:5432/confluence_db"
- ATL_JDBC_USER=confluence_user
- ATL_JDBC_PASSWORD=YOURSTRONGPASSWORD
- ATL_TOMCAT_CONTEXTPATH=
- "CATALINA_OPTS=-Duser.timezone=Europe/Moscow ${CATALINA_OPTS}"
- ATL_PROXY_NAME=SERVER_FQDN
- ATL_PROXY_PORT=443
- ATL_TOMCAT_SCHEME=https
- ATL_TOMCAT_SECURE
- JVM_MAXIMUM_MEMORY=4096m
- JVM_SUPPORT_RECOMMENDED_ARGS='-Djavax.net.ssl.trustStore=/opt/java/openjdk/jre/lib/security/cacerts'
depends_on:
- db
restart: always
nginx:
image: nginx:1.17.7
depends_on:
- confluence
container_name: nginx
restart: always
volumes:
- /etc/nginx/nginx.conf:/etc/nginx/nginx.conf
- /etc/nginx/ssl:/etc/nginx/ssl
- /etc/nginx/conf.d:/etc/nginx/conf.d
- /var/log/nginx:/var/log/nginx
- /etc/localtime:/etc/localtime:ro
ports:
- 80:80
- 443:443
networks:
- confluencenet
volumes:
confluencedata:
external: false
postgresqldata:
external: false
networks:
confluencenet:
ipam:
driver: default
config:
- subnet: 172.16.235.0/24
Большой список программных решений, которые предлагают бесплатные возможности для разработчиков, администраторов и прочее (FreeTier, бесплатные возможности и т.п.)
https://free-for.dev/#/
https://free-for.dev/#/
Что можно почитать по systemd
https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/system_administrators_guide/sect-managing_services_with_systemd-remote
https://people.redhat.com/pladd/systemd_NYRHUG_2016-03.pdf
https://www2.kangran.su/~nnz/pub/s4a/s4a_latest.pdf
https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/system_administrators_guide/sect-managing_services_with_systemd-remote
https://people.redhat.com/pladd/systemd_NYRHUG_2016-03.pdf
https://www2.kangran.su/~nnz/pub/s4a/s4a_latest.pdf
Red Hat Customer Portal
10.5. Controlling systemd on a Remote Machine Red Hat Enterprise Linux 7 | Red Hat Customer Portal
The Red Hat Customer Portal delivers the knowledge, expertise, and guidance available through your Red Hat subscription.
Разработчики телеграмма завезли новое в голосования.
https://telegram.org/blog/polls-2-0-vmq
https://telegram.org/blog/polls-2-0-vmq
Telegram
Polls 2.0: Visible Votes, Multiple Answers, and Quiz Mode
Since we first added polls for groups and channels, they've been used for everything from deciding where to have lunch to organizing leaderless protests. Today we're expanding the range of possibilities with three new kinds of Telegram polls.
logrotate положил грабельку (по-крайней мере, актуально для OEL 6, logrotate-3.7.8-28.el6.x86_64),
которая игнорирует директиву
Какие директивы ещё игнорируются - не оч понятно.
Имхо, не очень приятное поведение.
https://stackoverflow.com/questions/47888465/logrotate-working-but-ignoring-size
которая игнорирует директиву
size при запуске утилиты с ключом -f.Какие директивы ещё игнорируются - не оч понятно.
Имхо, не очень приятное поведение.
https://stackoverflow.com/questions/47888465/logrotate-working-but-ignoring-size
Stack Overflow
logrotate working but ignoring size
CentOS v.7
Logrotate v.3.8.6
I set logrotate to rotate when file reaches 5M but it ignores it, if I add daily it will rotate daily regardless of size, i tried with size, minsize and maxsize all th...
Logrotate v.3.8.6
I set logrotate to rotate when file reaches 5M but it ignores it, if I add daily it will rotate daily regardless of size, i tried with size, minsize and maxsize all th...
Превращаем RHEL-подобные дистрибутивы в RHEL с подпиской (если она у вас есть :) ) с помощью утилиты
https://www.redhat.com/en/blog/convert2rhel-how-update-rhel-systems-place-subscribe-rhel
Convert2RHELhttps://www.redhat.com/en/blog/convert2rhel-how-update-rhel-systems-place-subscribe-rhel
Redhat
Convert2RHEL: How to update RHEL-like systems in place to subscribe to RHEL
Introducing Convert2RHEL, a tool that can be used for the conversion of other Linux systems to Red Hat Enterprise Linux (RHEL) to allow Red Hat to provide support for them
Вжух и ты хакнут 😎
https://www.opennet.ru/opennews/art.shtml?num=52340
https://www.opennet.ru/opennews/art.shtml?num=52340
www.opennet.ru
Уязвимость в systemd, потенциально позволяющая повысить свои привилегии
В системном менеджере systemd выявлена уязвимость (CVE-2020-1712), которая потенциально позволяет добиться выполнения своего кода с повышенными привилегиями через отправку специально оформленного запроса по шине DBus. Проблема исправлена в тестовом выпуске…
Ситуация, когда у вас есть лог-файлы и они могут внезапно вырасти, до сих пор актуальна и может возникать по разным причинам:
1) Изменение уровня логгирования на DEBUG (моё любимое, сжирает дисковое пространство со скоростью света)
2) Ошибки в логах (при проблемах на инфраструктуре или с приложением тоже может достаточно быстро съесть ваше свободное место).
И неважно, запущено ли ваше приложение в контейнере или вне его, логи вездесущи.
Варианты решения/предотвращения тоже довольно очевидны:
1) Почитать документацию (увы и ах, довольно редко документация изучается в полном объеме и некоторые моменты упускаются), возможно, в ней описан стандартный функционал, который умеет в ротацию и очистку логов
2) Написать logrotate-файл и/или скрипт, который удаляет старые лог-файлы, если это не заложено в функционал программы.
3) Настроить мониторинг (ведь в современном мире без мониторинга никуда)
С Docker ситуация выглядит немножко поинтереснее. Если контейнера сожрали все дисковое пространство, а сервис или докер перезапускать нельзя (по разным причинам), то можно аккуратно снести логи,
например вот так:
задать эти параметры для конкретного контейнера/указать параметры в docker-compose.
https://docs.docker.com/config/containers/logging/json-file/
Соответственно, в случае с глобальными параметрами необходим перезапуск Docker-демона.
1) Изменение уровня логгирования на DEBUG (моё любимое, сжирает дисковое пространство со скоростью света)
2) Ошибки в логах (при проблемах на инфраструктуре или с приложением тоже может достаточно быстро съесть ваше свободное место).
И неважно, запущено ли ваше приложение в контейнере или вне его, логи вездесущи.
Варианты решения/предотвращения тоже довольно очевидны:
1) Почитать документацию (увы и ах, довольно редко документация изучается в полном объеме и некоторые моменты упускаются), возможно, в ней описан стандартный функционал, который умеет в ротацию и очистку логов
2) Написать logrotate-файл и/или скрипт, который удаляет старые лог-файлы, если это не заложено в функционал программы.
3) Настроить мониторинг (ведь в современном мире без мониторинга никуда)
С Docker ситуация выглядит немножко поинтереснее. Если контейнера сожрали все дисковое пространство, а сервис или докер перезапускать нельзя (по разным причинам), то можно аккуратно снести логи,
например вот так:
find /var/lib/docker/containers/ -type f -name "*.log" -delete
Дешево и сердито. Если нужно снести конретные логи, то можно воспользоваться вариантом ниже:# сортируем логи по возрастанию, получаем соответствие лога контейнеру
du -chs /var/lib/docker/containers/*/*json.log | sort -h
# грохаем логи
echo "" > $(docker inspect --format='{{.LogPath}}' container_id)
Чтобы сделать все красиво, можно задать глобальные параметры логгирования в JSON-файл Docker-демона, и/илизадать эти параметры для конкретного контейнера/указать параметры в docker-compose.
https://docs.docker.com/config/containers/logging/json-file/
Соответственно, в случае с глобальными параметрами необходим перезапуск Docker-демона.
Docker Documentation
JSON File logging driver
Learn how to use the json-file logging driver with Docker Engine
Кто-нибудь читал статью, как вам?)
Имхо, какая-то не оч репрезентативная выборка, о чем явно и сказали в комментариях.
В России большое количество компаний, который занимаются ИТ и вносят большой вклад, как на территории СНГ, так и за границей. А список из 15 компаний какой-то куцый.
https://habr.com/ru/company/habr_career/blog/488220/
Имхо, какая-то не оч репрезентативная выборка, о чем явно и сказали в комментариях.
В России большое количество компаний, который занимаются ИТ и вносят большой вклад, как на территории СНГ, так и за границей. А список из 15 компаний какой-то куцый.
https://habr.com/ru/company/habr_career/blog/488220/
Хабр
Лучшие ИТ-работодатели России 2019: ежегодный рейтинг Хабр Карьеры
На Хабр Карьере за 2019 год почти девять тысяч сотрудников поставили оценки более чем 1,5 тысячам организаций. Из них мы оставили 190 — только те, которые получили оценку от 10 и более сотрудников. В...