您好,登录后才能下订单哦!
WordPress 是一个广泛使用的开源内容管理系统(CMS),它允许用户轻松创建和管理网站。Docker 是一个开源的应用容器引擎,它可以让开发者打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。Docker Compose 是 Docker 官方编排(Orchestration)项目之一,负责快速在集群中部署分布式应用。
本文将详细介绍如何使用 Docker Compose 来搭建一个 WordPress 服务。我们将从 Docker 和 Docker Compose 的基本概念开始,逐步引导你完成 WordPress 服务的搭建过程。
在开始之前,确保你的系统已经安装了 Docker 和 Docker Compose。如果还没有安装,可以参考以下步骤进行安装。
对于 Ubuntu 系统,可以使用以下命令安装 Docker:
sudo apt-get update
sudo apt-get install docker.io
对于 CentOS 系统,可以使用以下命令安装 Docker:
sudo yum install docker
安装完成后,启动 Docker 服务并设置为开机自启:
sudo systemctl start docker
sudo systemctl enable docker
Docker Compose 可以通过以下命令安装:
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
验证安装是否成功:
docker-compose --version
Docker Compose 使用 YAML 文件来配置应用的服务。我们将创建一个 docker-compose.yml
文件来定义 WordPress 和 MySQL 服务。
首先,创建一个项目目录并进入该目录:
mkdir wordpress-docker
cd wordpress-docker
docker-compose.yml
文件在项目目录中创建一个名为 docker-compose.yml
的文件,并添加以下内容:
version: '3.8'
services:
db:
image: mysql:5.7
volumes:
- db_data:/var/lib/mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: somewordpress
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: wordpress
wordpress:
depends_on:
- db
image: wordpress:latest
ports:
- "8000:80"
restart: always
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: wordpress
WORDPRESS_DB_NAME: wordpress
volumes:
- wordpress_data:/var/www/html
volumes:
db_data:
wordpress_data:
docker-compose.yml
文件version: '3.8'
:指定 Docker Compose 文件的版本。services
:定义了两个服务:db
和 wordpress
。
db
服务使用 mysql:5.7
镜像,并挂载了一个卷 db_data
来持久化 MySQL 数据。wordpress
服务使用 wordpress:latest
镜像,并将容器的 80 端口映射到主机的 8000 端口。它还依赖于 db
服务,并设置了 WordPress 的环境变量。volumes
:定义了两个卷 db_data
和 wordpress_data
,用于持久化 MySQL 和 WordPress 的数据。在项目目录中运行以下命令来启动服务:
docker-compose up -d
-d
参数表示在后台运行服务。
可以使用以下命令查看服务的状态:
docker-compose ps
你应该会看到类似以下的输出:
Name Command State Ports
--------------------------------------------------------------------------------
wordpress-docker_db_1 docker-entrypoint.sh mysqld Up 3306/tcp, 33060/tcp
wordpress-docker_wordpress_1 docker-entrypoint.sh apach ... Up 0.0.0.0:8000->80/tcp
打开浏览器并访问 http://localhost:8000
,你应该会看到 WordPress 的安装页面。
在 WordPress 安装页面,首先选择语言,然后点击“继续”。
在数据库信息页面,填写以下信息:
wordpress
wordpress
wordpress
db
wp_
点击“提交”按钮。
在接下来的页面中,填写站点标题、用户名、密码和电子邮件地址,然后点击“安装 WordPress”按钮。
安装完成后,你将看到“成功!”页面。点击“登录”按钮,使用你设置的用户名和密码登录 WordPress 后台。
要停止服务,可以使用以下命令:
docker-compose down
要重启服务,可以使用以下命令:
docker-compose restart
要查看服务的日志,可以使用以下命令:
docker-compose logs -f
要删除服务并清理数据,可以使用以下命令:
docker-compose down --volumes
在 docker-compose.yml
文件中,我们定义了两个卷 db_data
和 wordpress_data
,用于持久化 MySQL 和 WordPress 的数据。即使容器被删除,数据仍然会保留在卷中。
可以使用以下命令查看卷:
docker volume ls
你应该会看到类似以下的输出:
DRIVER VOLUME NAME
local wordpress-docker_db_data
local wordpress-docker_wordpress_data
要删除卷,可以使用以下命令:
docker volume rm wordpress-docker_db_data wordpress-docker_wordpress_data
如果你希望 WordPress 服务使用不同的端口,可以修改 docker-compose.yml
文件中的 ports
配置。例如,将 8000:80
修改为 8080:80
,然后重新启动服务。
你可以将自定义主题和插件挂载到 WordPress 容器中。首先,在项目目录中创建一个 wp-content
目录,然后将主题和插件放入相应的子目录中。修改 docker-compose.yml
文件中的 volumes
配置,添加以下内容:
volumes:
- ./wp-content/themes:/var/www/html/wp-content/themes
- ./wp-content/plugins:/var/www/html/wp-content/plugins
然后重新启动服务。
通过 Docker Compose,我们可以轻松地搭建和管理 WordPress 服务。Docker Compose 提供了一种简单的方式来定义和运行多容器 Docker 应用。通过使用 Docker Compose,我们可以快速部署 WordPress 服务,并且可以轻松地管理和扩展服务。
希望本文能够帮助你成功搭建 WordPress 服务。如果你有任何问题或建议,欢迎在评论区留言。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
开发者交流群:
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。
原文链接:https://juejin.cn/post/7208384641190346812