Используйте Docker Compose для быстрого создания окружения LNMP, требуется всего одну команду
$ ./lnmp-docker up
Enterprise Edition Для получения информации о персонализированной настройке обратитесь к lnmp-ee
Операционная система | Статус |
---|---|
Windows | |
Linux | |
macOS | |
Linux arm64v8 | - |
Специальное предложение от Tencent Cloud: серверы с 1 ядром и 2 ГБ памяти за $99 в год!* Пример работы проекта
Этот проект поддерживает архитектуру x86_64
для Linux, macOS и Windows 10, а также архитектуру arm
для Debian (Raspberry Pi).
Всякий другой файл в этом проекте, кроме специфических файлов, таких как
.env
, запрещено модифицировать повторно. Почему?
Windows Docker очень нестабилен и отвечает медленнее при работе с Laravel. Решение
Для продолжения развития этого проекта вы можете использовать продвижение продукта или сделать пожертвование через пожертвование.
Подпишитесь на WeChat подписку автора проекта, чтобы получать последние новости проекта
Для работы данного проекта необходимы следующие программы:
Docker версия OnClickListener 20.10 Stable +
WSL (только для Windows)
Если вы используете Windows 10, обратитесь к поддерживающему документу.
Из-за медленной клонировки проектов с GitHub в Китае, этот проект хранится на gitee.com и ежедневно интегрируется в GitHub. Мы рекомендуем пользователям из Китая использовать китайскую зеркальную версию, а техническое взаимодействие осуществлять на GitHub, избегая создания issues или PR на gitee.com.
$ git clone --depth=1 https://github.com/khs1994-docker/lnmp.git
# $ git clone --depth=1 git@github.com:khs1994-docker/lnmp.git
# Если клонирование с GitHub слишком медленно, воспользуйтесь китайской зеркальной версией
$ git clone --depth=1 https://gitee.com/khs1994-docker/lnmp.git
# $ git clone --depth=1 git@gitee.com:khs1994-docker/lnmp.git
$ cd lnmp
$ ./lnmp-docker up
$ curl 127.0.0.1
Добро пожаловать в khs1994-docker/lnmp v20.10 x86_64 с использованием Docker образа
разработка
По умолчанию пароль для MySQL ROOT —
mytest
.
Создайте новую директорию для разработки PHP проекта в ./app/
и создайте новый конфигурационный файл Nginx в ./config/nginx/
.
Вы также можете использовать следующий командный запрос для быстрой установки нового PHP проекта и последующего выполнения серии конфигураций (генерация конфигурации Nginx, получение SSL сертификата).
# $ ./lnmp-docker new
$ ./lnmp-docker restart nginx
Вы можете изменить расположение папки проекта PHP, установив переменную окружения
APP_ROOT
.Дополнительная информация доступна в руководстве по лучшим практикам контейнеризации LNMP https://github.com/khs1994-docker/php-demo
$redis = new \Redis();
- $redis->connect('127.0.0.1',6379);
+ $redis->connect('redis', 6379);
- $pdo = new \PDO('mysql:host=127.0.0.1;dbname=test;port=3306','root','mytest');
+ $pdo = new \PDO('mysql:host=mysql;dbname=test;port=3306', 'root', 'mytest');
lnmp-php
lnmp-composer
lnmp-phpunit
lnmp-laravel
...
Дополнительная информация доступна в документации по поддержке
Поддерживается с помощью скрипта
acme.sh
$ ./lnmp-docker ssl khs1994.com -d *.khs1994.com
Перед использованием убедитесь, что вы установили ключи провайдера DNS в файле .env или системной переменной окружения. Также поддерживаются автоматически созданные самозаверяющие SSL-сертификаты. Дополнительная информация доступна в документации по поддержке
$ docker container ls -a -f label=com.khs1994.lnmp
Если вам требуется использовать самостоятельно собранное зеркало, обратитесь к документации по поддержке
# Перезапустить все
$ ./lnmp-docker restart
# Перезапустить конкретное приложение
$ ./lnmp-docker restart nginx php8
```## Остановка
```bash
$ ./lnmp-docker stop
$ ./lnmp-docker down
Подробности см. в документации по поддержке### Включенные программы | Имя | Докер образ | Версия | Основан на |
---|---|---|---|---|
ACME.sh | khs1994/acme:3.0.0 |
3.0.0 | alpine:3.16 |
|
NGINX | nginx:1.23.3-alpine |
1.23.3 | alpine:3.13 |
|
NGINX Unit | khs1994/php:8.2.3-unit-alpine |
1.28.0 | alpine:3.16 |
|
HTTPD | httpd:2.4.53-alpine |
2.4.53 | alpine:3.16 |
|
MySQL | mysql:8.0.33 |
8.0.33 | oraclelinux:8-slim |
|
MariaDB | mariadb:10.8.3 |
10.8.3 | ubuntu:jammy |
|
Redis | redis:7.0.0-alpine |
7.0.0 | alpine:3.16 |
|
PHP-FPM | khs1994/php:8.2.3-fpm-alpine |
8.2.3 | alpine:3.16 |
|
Composer | khs1994/php:8.2.3-composer-alpine |
2.5.5 | alpine:3.16 |
|
Memcached | memcached:1.6.15-alpine |
1.6.15 | alpine:3.16 |
|
RabbitMQ | rabbitmq:3.9.0-management-alpine |
3.9.0 | alpine:3.13 |
|
PostgreSQL | postgres:14.0-alpine |
14.0 | alpine:3.14 |
|
MongoDB | mongo:5.0.3 |
5.0.3 | ubuntu:bionic |
|
PHPMyAdmin | phpmyadmin:5.2.0 |
5.2.0 | alpine:3.16 |
|
Registry | registry:latest |
latest | alpine:3.11 |
|:--|:--|
|app
|Проектные файлы (HTML, PHP и т.д.)|
|scripts/backup
|Файлы резервного копирования|
|bin
|Часто используемые команды PHPer|
|config
|Конфигурационные файлы|
|dockerfile
|Персонализированный Dockerfile|
|log
|Лог-файлы|
|scripts
|Пользовательские скрипты|
Для упрощения работы проект предоставляет интерактивную командную утилиту ./lnmp-docker
(документация).
См. https://github.com/khs1994-docker/lnmp/issues/895
Используйте khs1994-docker/ci
См.: Как участвовать
Пожалуйста, посетите https://zan.khs1994.com
Проект ежедневно отправляет информацию о системе и IP-адресах пользователей на сервер сбора данных. Рекомендуется оставить эту функцию активной для улучшения проекта. Вы можете отключить службу сбора данных, установив в файле .env
параметр DATA_COLLECTION=false
.
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.