Речь в этой статье пойдёт о варианте быстрой и удобной организации изолированного окружения для разработки. Не любой разработки и не любого окружения, но вполне типового — сетевые сервисы и необходимые им очевидные базы данных, очереди и т.п.
Требования к dev-окружению: полнота, изолированность и простота развёртывания на рабочем месте.
Сейчас вместо локальной разработки намного проще, быстрее и удобнее развернуть полноценное dev-окружение на Kubernetes на локальной машине разработчика.
Итак, что же скрывается под названием Me DevOps (github):
- LXC/LXD контейнер основанный на Funtoo Linux;
- k3s — облегчённый вариант Kubernetes, «заточенный» на использование с ограниченными вычислительными ресурсами.
Продолжение »
Автор: Johnny
Тэги: DevOps, Funtoo, hasura, helm, k8s, kubernetes, postgresql, rabbit, ubuntu, сервер
Уже давно домашние серверы стоят не только у бородатых админов в вытянутых свитерах, но и у обычных людей, оценивших как удобство, так и безопасность такого решения.
В качестве домашнего сервера может выступать не только обычный стандартный ПК (пусть даже и собранный в небольшом корпусе), но и специализированные решения от Synology (с огромными возможностями) или даже небольшой одноплатный компьютер типа RaspberryPi
Давайте посмотрим, что из «джентльменского» обязательного набора стоит развернуть на таком домашнем сервере.
Из нестандартных, но интересных вещей можно посоветовать:
Автор: Johnny
Тэги: cloud, Docker, Grafana, homeserver, kodi, pi-hole, plex, server, synology, transmission
Проблема: При импорте SQL-базы возникает ошибка «Unknown collation: utf8mb4_0900_ai_ci».
Описание проблемы: Параметры сортировки текущего сервера отличаются от того, с которого был сделан бэкап базы. Вероятнее всего, версия MySQL (MariaDB) на вашем сервере ниже, чем на исходном.
Решение: Заменить в SQL-файле кодировку на другую. Открываете SQL-файл в текстовом редакторе, находите строчку
ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
и заменяете на
ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
Если файл дампа базы большой (несколько ГБ) и его невозможно открыть для редактирования, можно заменить сортировку в файле db.sql прямо в консоли:
sed -i 's/utf8mb4_0900_ai_ci/utf8mb4_unicode_ci/g' db.sql
Автор: Johnny
Тэги: bash, console, MariaDB, MySQL, SQL, сервер
Для ускорения загрузки сайта можно использовать кэширование на сервере, включить gzip-сжатие, использовать постоянные HTTP-соединения (keep-alive) или даже использовать CDN, но этого мало — PageSpeed Insights от Google настойчиво предлагает включить для моего сервера кеширование в браузере.
Ну ОК, так и поступим.
Если у вас веб-сервер Nginx, просто пропишите в конфиге:
location ~* ^.+\.(jpg|jpeg|png|gif|ico|js|css|txt|pdf)$ {
root /var/www; # Путь к корню сайта
expires 3d; # кешируем на 3 дня
}
и радуйтесь ускорению. А вот если вы используете Apache, то идите под кат 😉
Продолжение »
Автор: Johnny
Тэги: Apache, nginx, сервер
В новогодние каникулы айтишнику неинтересно просто пить, иногда нужно пошевелить мозгами, поэтому я решил перевести этот блог на защищённый протокол https.
В принципе, ничего особо сложного в получении SSL-сертификата от Let’s Encrypt и прикручивании его к веб-серверу нет, но вот с самим WordPress`ом пришлось немного повозиться, чтобы браузеры перестали выдавать предупреждение о незащищенном соединении (а всё потому, что часть изображений и внешних ресурсов, таких как скрипты от google или систем статистики, подключались по незащищенному протоколу http).
Все настройки можно делать через любой SQL-редактор (phpMyAdmin или Adminer).
Открываем его и выполняем следующие запросы:
UPDATE wp_options SET option_value = REPLACE(option_value, 'http://saradmin.ru', 'https://saradmin.ru') WHERE option_name = 'home' OR option_name = 'siteurl';
UPDATE wp_posts SET post_content = REPLACE (post_content, 'http://saradmin.ru', 'https://saradmin.ru');
UPDATE wp_postmeta SET meta_value = REPLACE (meta_value, 'http://saradmin.ru','https://saradmin.ru');
Разумеется, адрес saradmin.ru измените на свой и убедитесь, что префикс таблиц у вас «wp_«. Если нет, укажите свой.
После этого остаётся только изменить протокол с http:// на https:// для тех ресурсов, которые вы добавляли сами — счетчики, информеры, кнопки других сайтов и пр.
Автор: Johnny
Ребёнок понял, что можно не просить нас ввести пароль от учётки на компе с Ubuntu, а просто войти в гостевой режим. Да, в нём не сохраняются файлы в профиле, но доступ в Интернет открыт и можно без спроса играться в онлайн-игрушки. В связи с этим у нас возник вопрос: как отключить гостевой сеанс в Ubuntu?
Для Ubuntu 14 в конец файла конфигуации /etc/lightdm/lightdm.conf нужно было добавить строчку allow-guest=false и убрать таким образом гостевой заход. Но в Ubuntu 16.04 этого файла уже нет, поэтому в директории /etc/lightdm/lightdm.conf.d нам нужно создать отдельный конфигурационный файл, в который и добавить этот самый параметр в раздел [SeatDefaults]. Что мы и делаем в консоли:
sudo mkdir /etc/lightdm/lightdm.conf.d
sudo sh -c 'printf "[SeatDefaults]\nallow-guest=false\n" > /etc/lightdm/lightdm.conf.d/50-no-guest.conf'
Перезагружаем комп и радуемся отсутствию гостевого захода.
Если вдруг, по какой-то причине, нужно будет включить гостевой сеанс в Ubuntu, просто удаляем созданный конфиг:
sudo rm /etc/lightdm/lightdm.conf.d/50-no-guest.conf
Автор: Johnny
Тэги: ubuntu, ubuntu 16.04, консоль, коротко
|