dingo-d / wordpress-docker
用于在Docker上使用最新PHP版本进行WordPress开发的Docker配置蓝图
Requires
- php: >=7.0
This package is auto-updated.
Last update: 2024-08-26 03:03:19 UTC
README
WordPress on Docker
用于在Docker上开发WordPress的Docker配置蓝图。
这是一个用于测试在Docker上使用WordPress的仓库。您可以用作您项目的基座,随意玩耍和使用。
📚 目录
🎒 要求
可选
🚀 开发设置
开发是在本地进行的,使用Docker快速启动应用程序。为了开始工作,一旦您已经在本地上克隆了存储库,您应该使用make
命令。这将
- 将
.env.example
复制到.env
- 列出您可能想要用于启动项目的所有有用命令
您需要将创建的.env
文件填充必要的资料。
SSL设置
此设置使用本地自签名的SSL证书,以便您的网站可以运行在HTTPS上。为了在本地启用SSL,您需要先设置它。
使用vim
、nano
或您喜欢的任何编辑器将.env
文件中的APP_HOST
变量的值添加到您的hosts文件中。以下是在MacOS上使用终端添加它的示例
sudo nano /etc/hosts
然后添加
0.0.0.0 APP_HOST GOES HERE
并保存它。在Windows上,hosts位于C:\windows\system32\drivers\etc\hosts
。
从您的开发文件夹生成openssl密钥/证书对
make create-certificate
您将不得不填写以下问题;
* Country Name (2 letter code) * State or Province Name (full name) * Locality Name (eg, city) * Organization Name (eg, company) * Organizational Unit Name (eg, section) * Common Name (eg, fully qualified host name) -> APP_HOST * Email Address
完成后,您应该在config/certs
文件夹中找到2个文件
APP_HOST.crt APP_HOST.key
将.crt
文件添加到您的密钥链访问中,并将Trust
设置更改为Always Trust
(在MacOS上)。
WordPress设置
在启动docker之前,您需要将wp-config.php.tmpl
复制到wp-config.php
,将ngixn.conf.tmpl
复制到ngixn.conf
。如果您已经设置了.env
文件类型
make copy-configs
您可以使用以下命令测试docker-compose.yml
是否已正确设置
make docker-config
这将使用.env
文件中的环境变量预填充所有值,并解决路径。
在环境文件中设置好一切后运行
make docker-build
这将创建应用程序的容器。要运行它们(在分离状态下),您需要输入
make docker-up
生产设置
一些设置,如nginx.conf
和php.ini
(特别是opcache设置),需要修改以用于生产。您应该在生产环境中与您的devops协调工作。
:bullseye: 额外服务
如果您想的话,您可以在docker-compose.yml
中添加额外的服务。在.env.example
中包含了redis
和mailhog
服务的环境变量。要使用它们,将它们添加到您的docker-compose.yml
文件中的services
下,如下所示
redis: image: redis container_name: ${REDIS_CONTAINER_NAME} environment: REDIS_SCHEME: ${REDIS_SCHEME} REDIS_HOST: ${REDIS_HOST} REDIS_PORT: ${REDIS_PORT} expose: - ${REDIS_PORT} ports: - ${REDIS_PORT}:${REDIS_PORT} mailhog: image: mailhog/mailhog container_name: docker-mailhog ports: - "${MAILHOG_HOST_PORT_SMTP}:1025" - "${MAILHOG_HOST_PORT_WEB}:8025"
📜 许可证
WordPress on Docker是自由软件,可以根据LICENSE文件中指定的条款重新分发。版权©2019