1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/khs1994-docker-lnmp

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
cli.md 5.9 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Отправлено 08.03.2025 02:45 c4ee536

Клиентская утилита командной строки

Для сокращения количества вводимых команд этот проект предоставляет клиентскую утилиту командной строки lnmp-docker, которая упрощает выполнение операций:

  • Одноклик запуск при различных сценариях и архитектуре.

  • Удобное создание конфигурационных файлов NGINX и APACHE.

Соответствие командам Docker Compose

Например, lnmp-docker up | down соответствует docker compose up | down.

Настройка пользовательских скриптов CLI

Вы можете написать пользовательские скрипты в файлах lnmp-docker-custom-script или lnmp-docker-custom-script.ps1 (для Windows).

Пример: Если вам нужно выполнить какие-то действия перед выполнением команды lnmp-docker up, вы можете написать функцию __lnmp_custom_pre_up. Для выполнения действий после команды можно использовать функцию __lnmp_custom_post_up.

Автозаполнение командной строки

Установите переменную окружения LNMP_PATH как абсолютный путь до вашего проекта (например, /data/lnmp). Добавьте её в переменную PATH, чтобы иметь возможность использовать CLI этого проекта из любого каталога.

1. Bash

$ vi ~/.bash_profile

export LNMP_PATH=/data/lnmp

export PATH=$LNMP_PATH:$LNMP_PATH/bin:$PATH

Linux

$ sudo ln -s $LNMP_PATH/scripts/cli/completion/bash/lnmp-docker /etc/bash_completion.d/lnmp-docker

macOS

$ sudo ln -s $LNMP_PATH/scripts/cli/completion/bash/lnmp-docker /usr/local/etc/bash_completion.d/lnmp-docker

2. Fish

$ set -Ux LNMP_PATH /data/lnmp

$ ln -s $LNMP_PATH/scripts/cli/completion/fish/lnmp-docker.fish ~/.config/fish/completions/
```> Удаление переменной окружения `$ unset LNMP_PATH`

### 3. Zsh

```bash
$ vi ~/.zshrc

export LNMP_PATH=/data/lnmp

export PATH=$LNMP_PATH:$LNMP_PATH/bin:$PATH

Подробное описание базовых команд

Инициализация

Просмотрите процесс инициализации проекта.

Оригинальные команды Docker Compose

Используйте docker compose для запуска, остановки и удаления контейнеров с параметрами up -d, stop, down. Вы можете использовать -f для загрузки docker-compose.yml (можно назвать любым образом). CLI этого проекта представляет собой упаковку некоторых этих команд.

Сценарий CLI Оригинальная команда
Разработка $ ./lnmp-docker up docker compose -f docker-lnmp.yml -f docker-lnmp.override.yml up -d
Производство $ ./lnmp-docker swarm-deploy docker stack -c docker-production.yml lnmp

docker-lnmp.override.yml предназначен для переопределения файла docker-lnmp.yml. Выполнение команды docker compose up -d автоматически загружает этот файл.

Вы можете использовать команду config, чтобы просмотреть конечный файл конфигурации docker compose.

Использование команд docker compose

Я просто не хочу использовать предоставленный вами lnmp-docker CLI, мне нужна команда docker compose. Как быть?

Этот проект поддерживает создание стандартного файла docker-compose.yml. Для этого выполните следующую команду:

Обратите внимание: после каждого изменения файла .env необходимо повторно выполнить эту команду```bash $ ./lnmp-docker config > docker-compose.yml


После этого вы сможете использовать команды `docker compose`:

```bash
$ docker compose up -d $(./lnmp-docker services)

$ docker compose down

Использование различных файлов .env.${LNMP_ENV} в зависимости от окружения

Принцип: использование нового параметра --env-file PATH в версии compose 1.25.0

Допустим, вам требуется использовать данный проект в двух средах: development (разработка) и production (производство).

Тогда в среде development, добавьте файл .env.development (его содержимое следует взять за основу из файла .env.example) и установите переменную окружения LNMP_ENV=development:

$ export LNMP_ENV=development
# Windows PowerShell
# $env:LNMP_ENV="development"

$ ./lnmp-docker

Аналогично для среды production.

Обратите внимание: данный проект не создаёт файлы .env.${LNMP_ENV} автоматически. В случае отсутствия файла .env.${LNMP_ENV}, будет использоваться файл .env.

$ export LNMP_ENV=production
# Windows PowerShell
# $env:LNMP_ENV="production"

$ ./lnmp-docker
1
https://api.gitlife.ru/oschina-mirror/khs1994-docker-lnmp.git
git@api.gitlife.ru:oschina-mirror/khs1994-docker-lnmp.git
oschina-mirror
khs1994-docker-lnmp
khs1994-docker-lnmp
master