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 地址加上面指定的端口号就行啦!!!

相关推荐
wanhengidc1 小时前
云手机的适配性怎么样?
运维·服务器·安全·智能手机·云计算
jimy11 小时前
安卓里运行Linux
linux·运维·服务器
哟哟耶耶2 小时前
js-fetch流式实现中断重连
运维·服务器
爱凤的小光2 小时前
Linux清理磁盘技巧---个人笔记
linux·运维
字节数据平台5 小时前
刚刚,火山引擎多模态数据湖解决方案发布大数据运维Agent
大数据·运维·火山引擎
原神启动15 小时前
Docker 场景化作业:生产环境容器操作实训
运维·docker·容器
云老大TG:@yunlaoda3605 小时前
如何通过华为云国际站代理商CSBS进行备份策略设置?
运维·数据库·华为云
zly35006 小时前
linux查看正在运行的nginx的当前工作目录(webroot)
linux·运维·nginx
QT 小鲜肉6 小时前
【Linux命令大全】001.文件管理之file命令(实操篇)
linux·运维·前端·网络·chrome·笔记
呼啦啦呼啦啦啦啦啦啦6 小时前
docker制作镜像的两种方式(保姆级教学)
运维·docker·容器