wp-docker by crazyswami/wordpress-dev-skills
npx skills add https://github.com/crazyswami/wordpress-dev-skills --skill wp-docker用于 WordPress 开发的完整 Docker Compose 设置,包含 WP-CLI 自动化。
# 导航到项目目录
cd /path/to/project
# 复制模板
cp ~/.claude/skills/wp-docker/templates/* .
# 启动环境
docker-compose up -d
# 运行设置脚本
./wp-setup.sh "http://localhost:8080" "Site Name" "admin" "password" "admin@example.com"
| 服务 | 镜像 | 用途 | 端口 |
|---|---|---|---|
db | mariadb:10.11 | MySQL 数据库 | 3306 (内部) |
wordpress | wordpress:php8.3-apache | WordPress + Apache |
广告位招租
在这里展示您的产品或服务
触达数万 AI 开发者,精准高效
| 8080 |
wpcli | wordpress:cli | WP-CLI 命令 | - |
| 主机路径 | 容器路径 | 用途 |
|---|---|---|
./wp-content | /var/www/html/wp-content | 主题、插件、上传文件 |
db_data | /var/lib/mysql | 数据库持久化存储 |
./uploads.ini | /usr/local/etc/php/conf.d/uploads.ini | PHP 配置 |
# 安装 WordPress
docker-compose run --rm wpcli core install \
--url="http://localhost:8080" \
--title="Site Name" \
--admin_user="admin" \
--admin_password="password" \
--admin_email="admin@example.com"
# 安装并激活插件
docker-compose run --rm wpcli plugin install \
admin-site-enhancements \
branda-white-labeling \
admin-menu-editor \
yoast-seo \
litespeed-cache \
ewww-image-optimizer \
wp-mail-smtp \
instant-images \
--activate
# 列出已安装插件
docker-compose run --rm wpcli plugin list
# 更新所有插件
docker-compose run --rm wpcli plugin update --all
# 安装并激活主题
docker-compose run --rm wpcli theme install theme-name --activate
# 列出主题
docker-compose run --rm wpcli theme list
# 创建页面
docker-compose run --rm wpcli post create \
--post_type=page \
--post_title="About Us" \
--post_status=publish
# 创建文章
docker-compose run --rm wpcli post create \
--post_type=post \
--post_title="Hello World" \
--post_content="Welcome to our site." \
--post_status=publish
# 更新站点选项
docker-compose run --rm wpcli option update blogname "Site Name"
docker-compose run --rm wpcli option update blogdescription "Site tagline"
docker-compose run --rm wpcli option update permalink_structure '/%postname%/'
# 配置 ASE
docker-compose run --rm wpcli option update admin_site_enhancements \
'{"change_login_url":{"enabled":true,"slug":"secure-login"}}' \
--format=json
# 导出数据库
docker-compose run --rm wpcli db export backup.sql
# 导入数据库
docker-compose run --rm wpcli db import backup.sql
# 搜索和替换(用于迁移)
docker-compose run --rm wpcli search-replace "old-domain.com" "new-domain.com"
# 启动容器
docker-compose up -d
# 停止容器
docker-compose down
# 停止并移除卷(破坏性操作)
docker-compose down -v
# 查看日志
docker-compose logs -f wordpress
# 重启 WordPress
docker-compose restart wordpress
# 检查运行中的容器
docker-compose ps
# 检查 WordPress 版本
docker-compose run --rm wpcli core version
# 检查数据库连接
docker-compose run --rm wpcli db check
# 从源导出
docker-compose run --rm wpcli db export backup.sql
# 复制 wp-content 文件夹
# 导入到目标
docker-compose run --rm wpcli db import backup.sql
# 更新 URL
docker-compose run --rm wpcli search-replace "old-url.com" "new-url.com"
# 清除缓存
docker-compose run --rm wpcli cache flush
# 列出有可用更新的插件
docker-compose run --rm wpcli plugin list --update=available
# 检查安全问题
docker-compose run --rm wpcli plugin verify-checksums --all
# 检查日志
docker-compose logs db
docker-compose logs wordpress
# 重建容器
docker-compose up -d --build
# 等待数据库准备就绪
docker-compose exec db mysqladmin ping -h localhost -u root -p
# 检查环境变量
docker-compose config
# 修复 wp-content 权限
docker-compose exec wordpress chown -R www-data:www-data /var/www/html/wp-content
# 使用 shell 访问运行
docker-compose run --rm --entrypoint /bin/sh wpcli
# 检查 WordPress 安装
docker-compose run --rm wpcli core is-installed
upload_max_filesize = 64M
post_max_size = 64M
max_execution_time = 300
memory_limit = 256M
所有模板位于:~/.claude/skills/wp-docker/templates/
docker-compose.yml - 完整堆栈配置wp-setup.sh - 自动化站点设置脚本uploads.ini - PHP 配置.env.example - 环境变量模板每周安装次数
1
仓库
GitHub 星标数
3
首次出现
今天
安全审计
安装于
zencoder1
amp1
cline1
openclaw1
opencode1
cursor1
Complete Docker Compose setup for WordPress development with WP-CLI automation.
# Navigate to project directory
cd /path/to/project
# Copy templates
cp ~/.claude/skills/wp-docker/templates/* .
# Start environment
docker-compose up -d
# Run setup script
./wp-setup.sh "http://localhost:8080" "Site Name" "admin" "password" "admin@example.com"
| Service | Image | Purpose | Port |
|---|---|---|---|
db | mariadb:10.11 | MySQL database | 3306 (internal) |
wordpress | wordpress:php8.3-apache | WordPress + Apache | 8080 |
wpcli | wordpress:cli | WP-CLI commands | - |
| Host Path | Container Path | Purpose |
|---|---|---|
./wp-content | /var/www/html/wp-content | Themes, plugins, uploads |
db_data | /var/lib/mysql | Database persistence |
./uploads.ini | /usr/local/etc/php/conf.d/uploads.ini | PHP config |
# Install WordPress
docker-compose run --rm wpcli core install \
--url="http://localhost:8080" \
--title="Site Name" \
--admin_user="admin" \
--admin_password="password" \
--admin_email="admin@example.com"
# Install and activate plugins
docker-compose run --rm wpcli plugin install \
admin-site-enhancements \
branda-white-labeling \
admin-menu-editor \
yoast-seo \
litespeed-cache \
ewww-image-optimizer \
wp-mail-smtp \
instant-images \
--activate
# List installed plugins
docker-compose run --rm wpcli plugin list
# Update all plugins
docker-compose run --rm wpcli plugin update --all
# Install and activate theme
docker-compose run --rm wpcli theme install theme-name --activate
# List themes
docker-compose run --rm wpcli theme list
# Create page
docker-compose run --rm wpcli post create \
--post_type=page \
--post_title="About Us" \
--post_status=publish
# Create post
docker-compose run --rm wpcli post create \
--post_type=post \
--post_title="Hello World" \
--post_content="Welcome to our site." \
--post_status=publish
# Update site options
docker-compose run --rm wpcli option update blogname "Site Name"
docker-compose run --rm wpcli option update blogdescription "Site tagline"
docker-compose run --rm wpcli option update permalink_structure '/%postname%/'
# Configure ASE
docker-compose run --rm wpcli option update admin_site_enhancements \
'{"change_login_url":{"enabled":true,"slug":"secure-login"}}' \
--format=json
# Export database
docker-compose run --rm wpcli db export backup.sql
# Import database
docker-compose run --rm wpcli db import backup.sql
# Search and replace (for migrations)
docker-compose run --rm wpcli search-replace "old-domain.com" "new-domain.com"
# Start containers
docker-compose up -d
# Stop containers
docker-compose down
# Stop and remove volumes (DESTRUCTIVE)
docker-compose down -v
# View logs
docker-compose logs -f wordpress
# Restart WordPress
docker-compose restart wordpress
# Check running containers
docker-compose ps
# Check WordPress version
docker-compose run --rm wpcli core version
# Check database connection
docker-compose run --rm wpcli db check
# Export from source
docker-compose run --rm wpcli db export backup.sql
# Copy wp-content folder
# Import to destination
docker-compose run --rm wpcli db import backup.sql
# Update URLs
docker-compose run --rm wpcli search-replace "old-url.com" "new-url.com"
# Flush cache
docker-compose run --rm wpcli cache flush
# List plugins with updates available
docker-compose run --rm wpcli plugin list --update=available
# Check for security issues
docker-compose run --rm wpcli plugin verify-checksums --all
# Check logs
docker-compose logs db
docker-compose logs wordpress
# Rebuild containers
docker-compose up -d --build
# Wait for database to be ready
docker-compose exec db mysqladmin ping -h localhost -u root -p
# Check environment variables
docker-compose config
# Fix wp-content permissions
docker-compose exec wordpress chown -R www-data:www-data /var/www/html/wp-content
# Run with shell access
docker-compose run --rm --entrypoint /bin/sh wpcli
# Check WordPress installation
docker-compose run --rm wpcli core is-installed
upload_max_filesize = 64M
post_max_size = 64M
max_execution_time = 300
memory_limit = 256M
All templates are in: ~/.claude/skills/wp-docker/templates/
docker-compose.yml - Full stack configurationwp-setup.sh - Automated site setup scriptuploads.ini - PHP configuration.env.example - Environment variables templateWeekly Installs
1
Repository
GitHub Stars
3
First Seen
Today
Security Audits
Gen Agent Trust HubPassSocketPassSnykFail
Installed on
zencoder1
amp1
cline1
openclaw1
opencode1
cursor1
Azure Data Explorer (Kusto) 查询技能:KQL数据分析、日志遥测与时间序列处理
114,200 周安装