首页 话题 小组 问答 好文 用户 我的社区 域名交易 唠叨

[分享]Docker Stack部署Wordpress

发布于 2024-11-05 14:51:53
0
194

使用 Docker Stack 部署 WordPress 可以通过 Docker Compose 文件来定义服务,并通过 Docker Swarm 模式来管理。这是一个示例步骤,展示如何创建和部署一个 Docker Stack 来运行 WordPress 和 MySQL。

准备 Docker Compose 文件
首先,创建一个名为 docker-compose.yml 的文件,并在其中定义 WordPress 和 MySQL 服务:

version: '3.1'

services:
  wordpress:
    image: wordpress:latest
    ports:
      - "***0:80"
    environment:
      WORDPRESS_DB_HOST: db:3306
      WORDPRESS_DB_USER: exampleuser
      WORDPRESS_DB_PASSWORD: examplepass
      WORDPRESS_DB_NAME: exampledb
    volumes:
      - wordpress_data:/var/www/html

  db:
    image: mysql:5.7
    environment:
      MYSQL_ROOT_PASSWORD: somewordpress
      MYSQL_DATABASE: exampledb
      MYSQL_USER: exampleuser
      MYSQL_PASSWORD: examplepass
    volumes:
      - db_data:/var/lib/mysql

volumes:
  wordpress_data:
  db_data:


初始化 Docker Swarm 模式
确保 Docker Swarm 已经初始化。如果尚未初始化,可以使用以下命令:

docker swarm init


部署 Stack
使用 Docker Stack 部署上述定义的服务:

docker stack deploy -c docker-compose.yml wordpress_stack

 

这个命令会根据 docker-compose.yml 文件中的定义,在 Swarm 集群中创建和启动 WordPress 和 MySQL 服务。

验证部署
使用以下命令检查服务是否已启动:

docker stack services wordpress_stack


你应该会看到类似于以下输出,表明服务正在运行:

ID                  NAME                     MODE                REPLICAS            IMAGE               PORTS
x8z0m8wfn2yb        wordpress_stack_db       replicated          1/1                 mysql:5.7           
f9lgj0h7g7jo        wordpress_stack_wordpress  replicated          1/1                 wordpress:latest    *:***0->80/tcp


访问 WordPress
在浏览器中访问 http://<docker_host_ip>:***0(如果在本地运行,可以使用 http://localhost:***0),你应该可以看到 WordPress 安装界面。

管理 Stack
查看服务日志

docker service logs wordpress_stack_wordpress
docker service logs wordpress_stack_db


更新 Stack
如果需要更新 docker-compose.yml 文件中的配置,可以使用以下命令重新部署:

docker stack deploy -c docker-compose.yml wordpress_stack


删除 Stack
如果需要删除 Stack,可以使用以下命令:

docker stack rm wordpress_stack


总结
通过上述步骤,你可以使用 Docker Stack 部署一个运行 WordPress 和 MySQL 的环境。
Docker Stack 和 Swarm 提供了强大的集群管理和服务编排功能,可以帮助你更轻松地管理和扩展应用。

评论
一个月内的热帖推荐
鸟云
Lv.1普通用户

275

帖子

20

小组

225

积分

赞助商广告
站长交流