WordPress使用(1)

1. 概述

WordPress是一个开源博客框架,配合不同主题,可以有多种展现方式,博客、企业官网、CMS系统等,都可以很好的实现。

官网博客工具、发布平台和内容管理系统 -- WordPress.org China 简体中文,这里可以找到最新版本,入门方式,二次开发等详细的介绍。

Learn WordPress - There's always more to learn | Learn WordPress

主题

2. 安装部署

2.1 源码安装

访问官网,下载最新源码,参考:How to install WordPress -- Advanced Administration Handbook | Developer.WordPress.org 进行安装。

2.2 Docker安装

1)安装docker

参考《Docker的安装及使用摘要-CSDN博客》进行处理。

2)目录规划

考虑镜像挂载,数据持久存储及备份,新建目录如下:

复制代码
/home/xxxxx/xxxx  # 主目录
                  	-- backup # 备份目录
    				-- wordpress # 站点目录挂载
        			-- mysql # 数据库目录挂载

3)安装wordpress镜像

复制代码
# 默认拉取最新
docker pull wordpress

# 部署运行
docker run -it --name xxxx-wordpress -p 8100:80 -v /home/xxxxx/xxxxx/wordpress:/var/www/html -d --restart  unless-stopped wordpress
# -itd:以交互模式和伪终端的方式在后台运行容器
# --name:重新命名
# -p:端口
# --restart:重启策略
# -v:将wordpress的页面数据目录挂载出来,数据卷持久化存储,即使容器被删除或者重新创建,数据也不会丢失,仍然存在于宿主机的目录下。

docker ps # 可以查看容器状态

因为wordpress安装在阿里云ECS服务器上,考虑通过 xxxx.xxx 域名访问,这样宿主机的 8100 端口不用在外网暴露,直接利用 apache进行代理即可。

复制代码
<VirtualHost *:80>
    ProxyRequests On
    ProxyPreserveHost On
    ServerName www.xxxxxx.xxx
    ProxyPass / http://127.0.0.1:8100/
    ProxyPassReverse / http://127.0.0.1:8100/
</VirtualHost>

这样直接访问,可以看到页面已经出来,说明映射OK,但目前还没有数据库,所以可以暂缓处理:

复制代码
http://xxxx.xxx/wp-admin/setup-config.php

4)安装配置mysql

设定为wordpress专用,数据挂载在 xxxx 的目录下

复制代码
# 注意挂载目录的设定
docker run -d --name xxxx-mysql --restart unless-stopped -v /home/xx/xxxx/mysql/data:/var/lib/mysql -v /home/xx/xxxx/mysql/conf:/etc/mysql/conf.d -v /home/xx/xxxx/mysql/logs:/var/log/mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=xxxx mysql:8

# 将mysql data、conf、log均进行挂载
# 设置 root账户的密码
# 端口 3306,主要在本地访问,因此不做改变
# mysql:8 版本

docker ps # 可以查看容器状态

5)对mysql进行设置

进入容器内部:

复制代码
docker exec -it xxx-mysql /bin/bash

进入mysql,设置允许外部访问:

复制代码
mysql -u root -p
# 接着会让你输密码,这里输入密码时是没有字符提示的,输完直接回车即可;
# 设置 mysql 允许外部访问
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;

创建数据库:

复制代码
create database wordpress;

查找mysql容器的IP地址:

复制代码
# exit 退出 mysql 容器,使用以下命令获取 mysql 容器的 ip 地址
docker inspect ilive365-mysql | grep IPAddress
# 返回:
			"SecondaryIPAddresses": null,-
            "IPAddress": "172.17.0.6",
                    "IPAddress": "172.17.0.6",
# 显示的 172.17.0.6 就是 mysql 容器的 ip 地址

注意:这个IP地址,可能随着容器的重启会变化,如果要设置固定,可以参考上面docker文章。

6)wordpress与mysql的对接

在本地挂载目录 wordpress中,找到 wp-config-sample.php,打开修改:

复制代码
// ** Database settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define( 'DB_NAME', 'wordpress' );

/** Database username */
define( 'DB_USER', 'root' );

/** Database password */
define( 'DB_PASSWORD', 'xxxx' );

/** Database hostname */
define( 'DB_HOST', '172.17.0.6' );

/** Database charset to use in creating database tables. */
define( 'DB_CHARSET', 'utf8mb4' );

/** The database collate type. Don't change this if in doubt. */
define( 'DB_COLLATE', '' );

保存后。通过浏览器打开前面的地址:

http://xxxxx.xxxx/wp-admin/setup-config.php

针对页面提示信息进行填写,相关数据库信息前面已经留存。

创建用户,登录进入后,进入仪表盘页面:

至此,安装OK。

后面会针对 wordpress的相关配置及主题进行文章说明。

(end)

相关推荐
撸码到无法自拔2 小时前
docker常见命令
java·spring cloud·docker·容器·eureka
hi,编程哥6 小时前
Docker、ECS 与 K8s 网段冲突:解决跨服务通信中的路由问题
docker·容器·kubernetes
How_doyou_do7 小时前
项目全栈实战-基于智能体、工作流、API模块化Docker集成的创业分析平台
运维·docker·容器
xbd_zc11 小时前
【Jenkins简单自动化部署案例:基于Docker和Harbor的自动化部署流程记录】
docker·自动化·jenkins·harbor
我的璨宝宝啊13 小时前
linux小主机搭建自己的nas(三)docker安装nextcloud
linux·运维·docker
大米☋13 小时前
GitLab搭建与使用(SSH和Docker)两种方式
docker·ssh·gitlab
污斑兔14 小时前
在Mac环境下搭建Docker环境的全攻略
docker
modest —YBW14 小时前
Ollama+OpenWebUI+docker完整版部署,附带软件下载链接,配置+中文汉化+docker源,适合内网部署,可以局域网使用
人工智能·windows·docker·语言模型·llama
心动啊12115 小时前
docker使用过程中遇到概念问题
运维·docker·容器
Penguido16 小时前
基于 Nexus 在 Dockerfile 配置 yum, conda, pip 仓库的方法和参考
linux·docker·centos·conda·pip