最近同学买了一台虚机( centos7 系统 )、一个域名,让帮忙搭一个个人博客。本着简单快捷,个人博客采用 wordpress 来搭建。为了以后博客系统的迁移方便,使用 docker 来安装 wordpress。下面是这次博客搭建的详细过程。

一、更新 centos

yum -y update

二、安装 docker

yum install docker

启动 docker:systemctl start docker

设置开机启动:systemctl enable docker

三、安装 docker-compose

docker-compose 是布署多个容器的简单有效工具,由于博客系统搭建需要安装 wordpress 、mysql 两个容器,所以采用 docker-compose 来布署。docker-compose 的安装有不同的方式,这里采用的是 pip 安装。

1、安装 python-pip

yum -y install epel-release
yum -y install python-pip

2、升级 pip

pip install --upgrade pip

查看安装是否成功:pip -V

3、安装 docker-compose

pip install docker-compose

报错:

Cannot uninstall “requests”. It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall.

处理:

pip install docker-compose --ignore-installed requests

四、编写 docker-compose 脚本文件 docker-compose.yml

version: '3.3'

services:
db:
image: mysql:5.7
volumes:
- db_data:/var/lib/mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: wordpress123
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: wordpress123 wordpress:
depends_on:
- db
image: wordpress:latest
ports:
- "9090:80"
restart: always
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: wordpress123
volumes:
db_data: {}

五、使用 docker-compose 构建并运行程序

在 docker-compose.yml 的目录下运行

docker-compose up -d

浏览器输入:http://0.0.0.0:9090 进入 wordpress 安装页面

六、绑定域名

由于以后还会在这台机器上布署其他系统,所以没有给 wordpress 暴露到 80 端口,在绑定域名前需要用 nginx 做层代理

1、安装 nginx

yum install -y nginx

2、配置 nginx

# vim /etc/nginx/nginx.conf
...
http {
...
server {
listen ;
server_name xxx.com; location / {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header REQUEST-URI $request_uri;
proxy_set_header Cookie $http_cookie;
proxy_pass http://localhost:9090;
proxy_cookie_domain domino.server nginx.server;
proxy_redirect off;
}
}
}

3、启动 nginx 并设置开机自动运行

systemctl start nginx.service
systemctl enable nginx.service

4、wordpress 设置,进入 wordpress 管理页面

二个 URL 都设置为域名

如果不设置 URL,每次访问域名会自动跳转到 http://ip:port

浏览器输入 http://xxxx.com ,一个个人博客诞生了。

个人博客搭建( wordpress )的更多相关文章

  1. LNMP环境搭建之php安装,wordpress博客搭建

    LNMP环境搭建之php安装,wordpress博客搭建 一.介绍: 1.什么是CGI CGI全称是"通用网关接口"(Common Gateway Interface),HTTP服 ...

  2. WordPress博客搭建与问题总结

      一.WordPress博客搭建 1.安装Apache web服务器 yum install -y httpd systemctl restart httpd systemctl enable ht ...

  3. 2021年Wordpress博客搭建

    2021年WordPress博客搭建教程 这是一篇关于2021最新版的WP个人博客搭建教程.整篇文章会事无巨细的一步步讲述搭建博客的每一步. 0.前言 随着互联网和移动互联网的飞速发展,博客这一功能恍 ...

  4. [原创]HEXO博客搭建日记

    博客系统折腾了好久,使用过Wordpress,Ghost,Typecho,其中Typecho是我使用起来最舒心的一种,Markdown编辑+轻量化设计,功能不多不少刚好,着实让我这种强迫症患者舒服了好 ...

  5. Hexo博客搭建以及Next主题美化的经验之谈

    这并不是一篇博客搭建教程.内容主要包含个人对于Hexo博客搭建的心得,Next6.0主题美化的部分建议,以及摘录一些各种用于博客搭建的link. 在博客园3年6个月,确实也学到了很多,博客园也是目前为 ...

  6. Node.js博客搭建

    Node.js 博客搭建 一. 学习需求 Node 的安装运行 会安装node,搭建node环境 会运行node. 基础模块的使用 Buffer:二进制数据处理模块 Event:事件模块 fs:文件系 ...

  7. nodejs环境 + 入门 + 博客搭建

    NodeJS:NodeJS是一个使用了Google高性能V8 引擎 的服务器端JavaScript实现.它提供了一个(几乎)完全非阻塞I/O栈,与JavaScript提供的闭包和匿名函数相结合,使之成 ...

  8. 基于Github&Hexo的个人博客搭建过程

    大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...

  9. Hexo博客搭建全解

    [原创,转载请附网址:http://dongshuyan.top] 欢迎来到莫与的博客,第一篇记录了一下怎么写一篇博客,以方便之后写博客~ #从配置说起下载安装Git与Node.js略过 1.安装he ...

随机推荐

  1. cdnbest节点动态ip配置教程

    1.安装节点后,在未初始化里初始化节点,如下图操作,要选择动态ip(注:动态ip节点不支持添加辅ip) 服务器如果是动态ip,选择了动态ip选项,节点在自动更换了新的ip后,在节点列表里的ip和dns ...

  2. Spring Boot+Quartz实现一个实时管理的定时任务

    转载 https://www.cnblogs.com/wujiwen/p/9615120.html 项目实践过程中碰到一个动态管理定时任务的需求:针对每个人员进行信息的定时更新,具体更新时间可随时调整 ...

  3. git回滚远程仓库

    关于远程仓库回滚 首先,必须要明白的一件事,任何普通用户不能擅自做有关远程仓库回退的操作,如果你擅自回滚了远程仓库,会对项目团队其他人造成不可预知的影响.如果需要回退版本,先联系项目的仓库管理员,在团 ...

  4. centos7 smplayer 安装 安装视频播放器

    # yum -y install http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noar ...

  5. 最近素数问题——C语言

    从键盘输入一个整数,输出距离该数最近的素数 #include<stdio.h> #include<math.h> int judge(int x) { //判断素数 if (x ...

  6. Linux module 添加到bashrc 和临时ifort编译器 以及python2和3的配置

    第一步vim ~/.bashrc按键盘的i然后source /home/export/online1/bjpara/para/modules/scripts/cn-module.sh最后:x! bas ...

  7. AX_NumberSeq

    NumberSeq::newGetNum(NumberSeqReference::findReference(typeId2ExtendedTypeId(typeid(InventTransId))) ...

  8. oracle 为什么没有权限的用户也可以用sysdba登录

    我随便创建了一个用户,create user lisi identified by lisi; 当我用sqlplus登录的时候: cmd ->  sqlplus lisi/lisi  进不去   ...

  9. Python中添加中文注释报错SyntaxError: Non-UTF-8 code starting with '\xc1'

    问题:在文本编辑器中编辑Python文件时添加中文注释,运行python文件时报错.SyntaxError: Non-UTF-8 code starting with '\xc1' 解决方法:在文本开 ...

  10. Maven学习 五 Maven项目创建(1)jar项目

    第一步:Maven项目的创建 File->new->Maven project. 点击下一步 上方的两个多选框选上,第一个是不使用archetype 原型模板,第二个是使用默认工作空间 点 ...