Ответы пользователя по тегу Системное администрирование
  • Как настроить Docker для deployment-а?

    Preemiere
    @Preemiere
    Symfony developer
    У меня следующая схема.
    В репозитории проект в корне лежит Dockerfile, который умеет собирать как прод так и дев версию контейнера.
    Для каждого сервиса отдельно в гите свои репозитории. Например у nginx в репе Dockerfile, в котором по сути одна команда - скопировать конфиг.
    Redis у меня работает с конфигами по дефолту, так что для него репы нет.
    Так же в каждой репе лежит конфиг для Drone, который при отправке коммитов запускает сборку, тестирование и последующий деплой на прод сервер.
    Деплоем контейнеров на сервере у меня сейчас занимается Rancher. Но в ближайшее время планирую перейти на Docker Swarm.

    Конфиги сборок лежат в гите, кроме параметров.
    Параметры для Symfony я передаю через environment при старте контейнеров.
    Параметры для сборки зашифрованы в .drone.sec файле. Но в версии 0.5 они будут лежать сразу на сервере.

    Docker-compose для прода я не использую, через него поднимается окружение исключительно для дев версии.

    Прокидывать папки с хостовой машины не рекомендуется, поэтому для персистентных данных нужно создавать volume и прокидывать их.

    При данной схеме на сервер вообще не захожу. Сделал пуш, код протестировался и задеплоился.

    Примеры моих конфигов: Dockerfile, drone.yml
    Ответ написан
    9 комментариев
  • Как правильно сделать перезагрузку веб-сервера?

    Preemiere
    @Preemiere
    Symfony developer
    Правильнее дать пользователю deployer права на перезагрузку nginx без доступа к sudo.
    Либо запустить ещё один nginx от deployer и перезагружать сколько вздумается, а первым nginx'ом проксировать запросы на второй.
    P.S. А необходимость в перезапуске nginx'a после деплоя точно есть?
    Ответ написан