Docker 部署 WordPress 并完成建站

什么是 WordPress

WordPress 是使用 PHP 语言开发的博客平台,用户可以在支持 PHP 和 MySQL 数据库的服务器上架设属于自己的网站。也可以把 WordPress 当作一个内容管理系统(CMS)来使用。WordPress 是一款个人博客系统,并逐步演化成一款内容管理系统软件,它是使用PHP 语言和 MySQL 数据库开发的,用户可以在支持 PHP 和 MySQL 数据库的服务器上使用自己的博客。WordPress 有许多第三方开发的免费模板,安装方式简单易用。不过要做一个自己的模板,则需要你有一定的专业知识。比如你至少要懂的标准通用标记语言下的一个应

用 HTML 代码、CSS、PHP 等相关知识。WordPress 官方支持中文版,同时有爱好者开发的第三方中文语言包,如 wopus 中文语言包。WordPress 拥有成千上万个各式插件和不计其数的主题模板样式。

下载 docker

这里以 centos 7 云服务器为例 演示如何安装 docker,及其相关插件。如:容器编排插件,镜像制作插件。

  1. 配置仓库

    bash 复制代码
    sudo yum install -y yum-utils
    bash 复制代码
    sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
  2. 使用国内镜像源下载 docker

    bash 复制代码
    sed -i 's@//download.docker.com@//mirrors.ustc.edu.cn/docker-ce@g' /etc/yum.repos.d/docker-ce.repo
  3. 下载 docker 及其相关插件

    bash 复制代码
    sudo yum install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
  4. 启动 docker

    bash 复制代码
    sudo systemctl daemon-reload
    bash 复制代码
    sudo systemctl start docker
  5. 检查 docker 是否启动

    bash 复制代码
    systemctl status docker 

如果是下面这样就是安装完成啦!!

Docker 镜像源修改

添加配置文件

bash 复制代码
vim /etc/docker/daemon.json

将下面的内容拷贝到 daemon.json

bash 复制代码
{
 "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn/", "https://hub-mirrior.c.163.com"]
}

重启 docker

bash 复制代码
systemctl restart docker

拉取 wordpress 镜像

bash 复制代码
docker pull wordpress:php8.3

拉取 MySQL 镜像

bash 复制代码
docker pull mysql:5.7

编写 compose 文件

  • 首先我们创建一个目录:

    bash 复制代码
    mkdir test_wordpress
  • 在这个目录下创建一个 docker-compose.yaml 文件,将下面的内容赋值进去,文件名无所谓!!
    这里面的 ports 很重要,需要根据你的实际情况来填写。

bash 复制代码
version: '3.8'
services:
  wordpress:
    depends_on:
      db:
        condition: service_healthy
    image: wordpress:php8.3
    ports:
      - "9999:80" # 指定端口映射,外部你想使用那个端口访问,我这里是 9999 
    volumes:
      - ./wordpress:/var/www/html
    environment:
      WORDPRESS_DB_HOST: db:3306
      WORDPRESS_DB_USER: wordpress
      WORDPRESS_DB_PASSWORD: wordpress
      WORDPRESS_DB_NAME: wordpress
  db:
    image: mysql:5.7
    volumes:
      - ./db_data:/var/lib/mysql
    # 设置环境变量, environment 的值可以覆盖 env_file 的值
    environment:
      MYSQL_ROOT_PASSWORD: mywordpress
      MYSQL_DATABASE: wordpress
      MYSQL_USER: wordpress
      MYSQL_PASSWORD: wordpress
    healthcheck:
      test: mysql --user=root --password='mywordpress' -e "SELECT 1;"
      interval: 10s
      timeout: 5s
      retries: 10

最后输入命令:

bash 复制代码
docker compose up -d

访问 IP 地址加上面指定的端口号就行啦!!!

相关推荐
梅见十柒28 分钟前
wsl2中kali linux下的docker使用教程(教程总结)
linux·经验分享·docker·云原生
传而习乎42 分钟前
Linux:CentOS 7 解压 7zip 压缩的文件
linux·运维·centos
soulteary43 分钟前
突破内存限制:Mac Mini M2 服务器化实践指南
运维·服务器·redis·macos·arm·pika
运维&陈同学2 小时前
【zookeeper01】消息队列与微服务之zookeeper工作原理
运维·分布式·微服务·zookeeper·云原生·架构·消息队列
是阿建吖!2 小时前
【Linux】进程状态
linux·运维
明明跟你说过3 小时前
Linux中的【tcpdump】:深入介绍与实战使用
linux·运维·测试工具·tcpdump
O&REO3 小时前
单机部署kubernetes环境下Overleaf-基于MicroK8s的Overleaf应用部署指南
云原生·容器·kubernetes
运维小文4 小时前
K8S资源限制之LimitRange
云原生·容器·kubernetes·k8s资源限制
登云时刻4 小时前
Kubernetes集群外连接redis集群和使用redis-shake工具迁移数据(二)
redis·容器·kubernetes
Mr_Xuhhh4 小时前
重生之我在学环境变量
linux·运维·服务器·前端·chrome·算法