Устарело
Пассворк 4

Docker

31min

Установка Пассворк с помощью Docker

Пожалуйста, обратите ваше внимание, это Docker-compose сборка для Linux.

Установка Docker

Скачайте и установите Docker CE (https://docs.docker.com/engine/install).

Cкачайте и установите Docker Compose (https://docs.docker.com/compose/install/)

Обновите систему:

Shell


Установите Git

Shell


Скачайте файлы управления и шаблонные конфиг-файлы

Создайте директорию /server и склонируйте файлы:

Shell


Скачайте исходные файлы Пассворк

Удалите файл .gitkeep:

Shell


Склонируйте репозиторий. Укажите логин и пароль, которые вам сообщили менеджеры Пассворк.

Shell


💡 Где взять логин и пароль Мы отправляем логин и пароль к нашему репозиторию после покупки Пассворк.

Перейдите в каталог для Docker Compose

Shell


Запустите Docker Compose

Shell


Проверьте, что контейнеры запустились и работают:

Shell


Инсталляция

При первом открытии Пассворк вы увидите диалог инсталляции, который проверит корректность настройки сервера и позволит ввести базовые параметры.

💡 Если вы устанавливаете новую копию Пассворк — оставьте все поля в значениях по умолчанию кроме строки подключения к БД. В ней необходимо изменить *localhost* на *db*.



Зарегистрируйте администратора Пассворк

Введите логин и пароль для первого пользователя. Пользователь автоматически станет администратором и владельцем организации.

О Docker-образах

Docker-образы устроены таким способом, что все важные данные вынесены в общие с хостовой машиной папки. Поэтому вы можете смело останавливать, удалять и создавать новые контейнеры. Конфигурационные файлы так же хранятся в общих папках (т.е. не в контейнере), поэтому вы можете провести любую настройку Nginx, PHP и MongoDB без внесения изменений непосредственно в образы или контейнеры. Просто внесите изменения в конфиг файлы и перезапустите контейнер или сервисы.

Если вам необходимо внести изменения в образ, то войдите в контейнер, внесите изменения и затем сделайте коммит в ваш образ командой

Shell


Более подробно описано в официальной документации Docker.

Полезные команды

Скопируйте утилиту dexec в /usr/bin/:

Shell


Вход в контейнер:

Shell


Восстановление прав для файлов сайта (требуется после обновления):

Shell


Перезагрузка Nginx без остановки:

Shell


Контейнеры запущены с опцией autostart. Это означает, что Docker автоматически перезапустит контейнер, если он по каким-либо причинам остановится. Поэтому, если вам необходимо остановить контейнер, сперва отключите autostart:

Shell


Включить autostart обратно:

Shell


Без опции autostart вы можете остановить контейнеры принудительно:

Shell


Обратите внимание, что если опция autostart включена, то эти команды перезапустят Nginx и MongoDB,

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

Структура файлов

Файлы конфигураций:

Shell


Данные (база данных):

Shell


Логи:

Shell


Сайты:

Shell


Пример: Как изменить конфигурацию Nginx или PHP

Отредактируйте файлы:

Shell


Перезапустите nginx и php-fpm:

Shell


Настройка почты

Nginx контейнер использует Postfix для отправки почты. Все конфигурационные файлы вы можете найти здесь:

Shell


Отредактируйте их под свои нужды. Перезапустите Postfix, чтобы изменения вступили в силу.

Shell


Пример настройки Postfix

Откройте конфигурационный файл /server/conf/postfix/main.cf.

Shell


Убедитесь в том, что параметр myhostname совпадает с полным доменным именем вашего сервера:

Shell


Настройка имен и паролей SMTP.

Откройте или создайте файл /server/conf/postfix/sasl_passwd.

Shell


Добавьте SMTP хост, имя пользователя и пароль должны быть записаны в следующем формате:

Shell


Если вы хотите использовать нестандартный TCP-порт (например, 587), используйте следующий формат:

Shell


для Gmail запись будет выглядеть следующим образом:

Shell


Создайте хэшированную базу данных для Postfix, выполните команду postmap:

Shell


После успешного выполнения команды в директории /server/conf/postfix должен появиться новый файл sasl_passwd.db.

Защита файла с паролями и хэш-файла.

Файлы /server/conf/postfix/sasl_passwd и /server/conf/postfix/sasl_passwd.db, созданные в предыдущих шагах, содержат ваши учетные данные SMTP в виде простого текста. По соображениям безопасности вы должны изменить права доступа к ним, так чтобы только пользователь root мог читать и записывать в файл.

Выполните следующие команды, чтобы изменить владельца файлов на root и обновить права доступа для файлов:

Shell


Конфигурация релей сервера

Откройте файл /server/conf/postfix/main.cf.

Shell


Измените параметр relayhost, на свой внешний SMTP релей. Если в файле sasl_passwd был указан нестандартный TCP-порт, то вы должны использовать тот же порт при настройке параметра relayhost.

Укажите SMTP релей:

Shell


для Gmail запись будет выглядеть следующим образом:

Shell


В конце файла добавьте следующие параметры для включения аутентификации:

Shell


Сохраните изменения.

Перезапустите Postfix:

Обновлено 04 Oct 2024
Doc contributor
Помогла ли вам эта страница?