Aisamiery

Aisamiery
Рейтинг
324
Регистрация
12.04.2015
GitHub и GitLab уже предлагали? Правда не читал оферты, но мои репозитарии бестолковые с тестовыми заданиями висят уже много лет бесплатно =))
livetv #:
Как в композе добавить группу и пользователя в группу?

Смотря для чего вам это надо, запустить основной процесс от пользователя и его группы в композ (версии 3) можно вот так

PS. Да забыл, только надо экспортунть эти переменные окружения

export UID="$(id -u)"
export GID="$(id -g)"
lutskboy :
у меня есть образ ubuntu. я его запустил. создается контейнер. установил там openssh-server и сменил пароль от root

Вы немного не поняли суть докера, это не виртуализация как например виртуалбокс, задача докера изолировать 1 процесс с PID 1 только за ним он и следит. То есть докер контейнер это запуск одной программы изолированно, например  openssh-server, для примера nginx + php-fpm+mysql это будет 3 разных докер контейнера, при том если хотите lets encrypt это будет четвертый контейнер, крон пятый и так далее.

Сам по себе контейнер это запуск образа, а образ это "слоеный пирог" как таковой, в сам контейнер ничего писать нельзя он не сохраняет состояние, можно писать только в образ слоями, для этого есть файл Dockerfile каждая команда в нем это новый слой в пироге, только там можно дополнительно как то расширить образ новыми "слоями пирога" и на основе нового образа запустить контейнер.

Оверхеда практически никакого нет, вся эта изоляция делается на уровне ядра линукса хостовой системы, именно линукса, потому что в остальных системах это не совсем чистый докер, а Docker Desktop (докер на костылях).

Преимущество докера раскрывается на самом деле в управлении окружением, вы можете запустить с десяток php-fpm процессов различных версий, библиотек и конфигураций, что гарантирует (почти) одинаковое поведение на любой хост системе где установлен докер. Так же это помогает именно раскатки приложения в продакшене, вы можете подготовить и сконфигурировать образ для приложения, потом при изменениях в гите делать слой в образе накатывая туда код и записывать готовый образ с приложением в регистре (registry - хранилище образов), а системы деплоя уже увидят что изменился образ и подтянут его, запустят 100500 контейнеров после чего переключат на них трафик, так что деплой приложений стал простым и контролируемым. Но все это к стейтлесс частям приложения, стейтфул системы (базы данных, хранилища файловые) в докер как правило не запихивают для этого есть другие инструменты. 

С виду действительно, как будто бэкапы срабатывают. Смена шареда сомневаюсь что поможет или будет лучше или будет дольше лучше =))

Но можете попробовать netangels мне ребята нравятся использую вместе с бегетом уже много лет

ViktorVakhonin #:
как та же почта, чтоб её

FastPanel прописывает spf, dkim, dmarc? Зачем почта на сервере с сайтом? У большинства хостеров закрыты порты почтовые. При том панели ставят в том числе на виртуалки где просто столько всего не запустить по ресурсам =))

ViktorVakhonin #:
Банальный пример: запуск ПО в docker

Он не нужен без оркестрации или хотя бы CI/CD, в чем смысл запускать что то в докере, а не сразу на хост системе?

И вопрос: а вы не планируете выложить сорцы в опенсурс? И откроете ли возможность сообществу расширять вашу панель?

Запустить сайт на чистой ОС с nginx (+lets encrypt) + php-fpm + mysql вопрос 10-15 минут. Я хз сколько ставятся панели, сколько они потом требуют к себе внимания, но обычно панель ставит кучу всего лишнего, делает какие то не нужные штуки, плюс выставляет кривые настройки. Взять ту же Fast Panel или ISP, я не нашел исходный код например, и ставить с учетом новых разных политик нововведений наказаний владельцев ресурсов, себе какие то скрипты администрирования запущенные от рута.... ну так себе если настроить работу сайта на самом деле вопрос 10-15 минут даже без готовых штук. А с учетом того какими темпами развивается направления Infrastructure as Code (IaC), можно себе подготовить развертывание сайтов, их обновление и прочее вообще на автомате, там не сильно то сложнее чем найти и поставить плагин для WP
Vladimirus #:
А там, все что угодно могут, скажут мол рекламу нельзя на такие сайты, от рся, например, или эквайринг банковский. ЦБ например напишите письмо какое нибудь.

Технически из вне проверить невозможно, начиная от проксирования в клоудфлаер и заканчивая арендой прокси прокладки у хостера из реестра. При том если клоудфлер может выдать реальный IP то у прокси-прокладки сделать это не получится, так как нет доступа к настройкам

Kaavain #:

Там вот и все:

function level($id) {
$level = 1;
        while ($id > 1) {
                $result = mysql_query("SELECT id,id_parent FROM `content` WHERE id='$id'");
                $myrow = mysql_fetch_array($result);
                $id_parent = $myrow["id_parent"];
                $level = $level + 1;
                $id = $id_parent;
        }
        return $level;
}

Во-первых, у вас тут SQL Injection.
Во-вторых, level лучше добавить в таблицу content чтоб он выбирался одним запросом, а не в цикле

Sly32 #:

И что это меняет? В любом случае нам нужен id,  чтобы по нему сделать фильтр записей. 

Зачем? Необязательно выбирать поле в select чтобы по нему сделать фильтрацию.

Запрос вида 

select `id`, `parent_id` from `content` where `id` = 1

вернет только строки где id = 1 следовательно в select id не нужен так как он уже известен, других там не будет и это лишние данные которые гоняются, он нужен только в IN чтобы понять к какому id из запрошенных какой parent_id соответствует

webinfo #:

Понятно, зачем. Чтобы id попал в объект, который формируется в результате запроса.

Это было бы логично если бы был WHERE id IN (...), но в данном случае действительно лишнее

Всего: 4113