基于 Docker 部署 WordPress 博客应用
一、安装ubantu
https://zhuanlan.zhihu.com/p/355314438
二、ubantu安装docker
ubuntu 20.04 LTS 安装docker - 二所 - 博客园 (cnblogs.com)
三、安装docker compose
(一)下载 docker-compose程序包:
curl-L https://github.com/docker/compose/releases/download/1.28.5/docker-compose-$(uname-s)-$(uname-m)-o /usr/local/bin/docker-compose
(二)添加可执行权限:
sudochmod +x /usr/local/bin/docker-compose
(三)检查安装结果:
# 命令sudodocker-compose-v# 结果
root@hecs-398409:~# docker-compose -vdocker-compose version 1.28.5, build c4eb3a1f
四、docker拉取WordPress镜像和mysql镜像
Docker实战:Docker安装WordPress,快速搭建自己的博客https://www.zhihu.com/tardis/zm/art/571679308?source_id=1005
五、编写DockerFile
# 基于官方的 WordPress 镜像
FROM wordpress:latest
# 安装必要的插件或配置
# 可以添加自定义的 WordPress 插件、主题或其他定制配置
# 基于官方的 MySQL 镜像
FROM mysql:latest
# 设置 MySQL 相关的环境变量
ENV MYSQL_ROOT_PASSWORD=root_password
ENV MYSQL_DATABASE=wordpress
ENV MYSQL_USER=wp_user
ENV MYSQL_PASSWORD=wp_password
# 添加初始化数据库的脚本
COPY init.sql /docker-entrypoint-initdb.d/init.sql
测试运行两个镜像,容器启动成功
六、编写Docker-compose.yaml
version:'3'services:wordpress:image: wordpress:latest
ports:-"8000:80"# 将容器的 80 端口映射到宿主机的 8000 端口volumes:- wordpress_data:/var/www/html/wp-content
environment:WORDPRESS_DB_HOST: db
WORDPRESS_DB_NAME: wordpress
WORDPRESS_DB_USER: wp_user
WORDPRESS_DB_PASSWORD: wp_password
depends_on:- db
networks:- my_network
db:image: mysql:latest
environment:MYSQL_ROOT_PASSWORD: root_password
MYSQL_DATABASE: wordpress
MYSQL_USER: wp_user
MYSQL_PASSWORD: wp_password
volumes:- db_data:/var/lib/mysql
networks:- my_network
volumes:wordpress_data:db_data:networks:my_network:
(一)docker-compose文件解释:
这个 Docker Compose 文件定义了两个服务:wordpress 和 db,分别用于运行 WordPress 应用和 MySQL 数据库。下面是对这个 Docker Compose 文件的简要介绍:
- 服务 wordpress: - 使用 wordpress:latest 镜像作为基础镜像。- 将容器的 80 端口映射到宿主机的 8000 端口,可以通过访问 http://localhost:8000 来访问 WordPress 应用。- 将 WordPress 数据目录 /var/www/html/wp-content 映射到名为 wordpress_data 的卷中,以便持久化存储 WordPress 数据。- 定义了一些环境变量,包括数据库主机、数据库名称、数据库用户和密码,供 WordPress 应用连接数据库使用。- 依赖于 db 服务,即在启动 wordpress 服务之前会先启动 db 服务。- 将 wordpress 服务连接到名为 my_network 的自定义网络中。
- 服务 db: - 使用 mysql:latest 镜像作为基础镜像。- 设置了 MySQL 的 root 用户密码、数据库名称、普通用户和密码等环境变量。- 将 MySQL 数据目录 /var/lib/mysql 映射到名为 db_data 的卷中,以便持久化存储数据库数据。- 将 db 服务连接到名为 my_network 的自定义网络中。
- 定义了两个卷 wordpress_data 和 db_data,用于持久化存储 WordPress 数据和 MySQL 数据。
- 定义了一个名为 my_network 的自定义网络,用于连接 wordpress 和 db 服务。
这个 Docker Compose 文件配置了一个简单的 WordPress 应用和 MySQL 数据库的部署,通过定义两个服务、卷和自定义网络,实现了它们之间的连接和数据持久化。通过运行 docker-compose up 命令,可以启动这两个服务并搭建一个运行 WordPress 应用的环境。
(二)使用docker-compose运行
docker compose up -d
运行成功
七、访问博客
(一)访问 虚拟机ip:8000 ,即可进入主页
选择简体中文
注册登录账号,输入网站信息
登陆系统
进入后台,后台可进行主题和页面的设置
(二)访问ttp://192.168.6.220:8000/ 进入主页
(三)点击左上角进入管理后台,可进行主题页面自定义
版权归原作者 单车521 所有, 如有侵权,请联系我们删除。