Docker + WordPress搭建个人博客

424 阅读2分钟

WordPress是目前非常受欢迎的开源博客系统,今天使用Docker + WordPress搭建个人博客,整个过程非常丝滑。

搭博客先要准备域名和服务器,昨天在阿里云买了个.top的域名花了5块钱(美滋滋~~),本来再准备在阿里云再选个轻量应用服务器看了下最便宜都也要600+一年,去了隔壁腾讯花了88买了个一个1核 + 2g的服务器还算不错。

安装Docker

安装Dokcer比较简单几行命令下来,安排的明明白白:

  1. 更新apt仓库索引
sudo apt-get update
  1. 安装软件,允许apt使用https软件源
sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    software-properties-common
  1. 添加Docker官方GPG key
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
  1. 添加Docker官方源
sudo add-apt-repository \
   "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
   $(lsb_release -cs) \
   stable"
  1. 更新apt仓库索引
sudo apt-get update
  1. 安装Docker
sudo apt-get install docker-ce

安装完Docker以后再测试下:

sudo docker run hello-world

没问题的话会控制台会打印Hello from Docker!

使用docker-compose安装

docker-compose是一个很轻量级的Docker窗口编排工具,使用非常方便。首次使用也需要安装,不过过程也比较简单:

sudo curl -L "https://github.com/docker/compose/releases/download/1.24.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

两条命令搞定,安装完docker-compose然后再去docker hub里面找合适的WordPress镜像,WordPress对Docker非常友好提供了两种形式的部署镜像分别是:

  • php + apache
  • php + fpm

我选用的是php + apache如果已经部署过Nginx的话可以的考虑使用php + fpm,因为我的是新机器,选用的最快速、方便的方案1来部署。话不多说了让我们实操起来吧!

新建一个目录叫arch:

mkdir -p arch

然后使用vi添加个docker-compose.yaml文件将下面的内容复制去下:

version: '3.1'

services:
  wordpress:
    image: wordpress:php7.3-apache
    restart: always
    ports:
      - 80:80
    environment:
      WORDPRESS_DB_HOST: db
      WORDPRESS_DB_USER: root
      WORDPRESS_DB_PASSWORD: 123456
      WORDPRESS_DB_NAME: ArchDigest
    volumes:
      - ./www/html:/var/www/html

  db:
    image: mysql:5.7
    restart: always
    environment:
      MYSQL_DATABASE: ArchDigest
      MYSQL_ROOT_PASSWORD: 123456
    volumes:
      - ./mysql:/var/lib/mysql

大概功能就是部署WordPress和Mysql两个容器,保存文件然后在arch目录下面执行命令:

docker-compose up -d 

查看控制台,如果没意外的话会输出启动完成:

Creating network "arch-digest_default" with the default driver
Creating arch-digest_wordpress_1 ... done
Creating arch-digest_db_1        ... done

启动WordPress和Mysql,等2秒钟就可以正常访问博客啦。非常方便快速,不到十分钟就能搭建一个博客,最后别忘记打开服务器的80商品,设置域名解析!!

安利几个小插件/主题

  • WP Editor.md : Markdown编辑器
  • 蜜蜂采集: 采集公众号文章用的
  • Kratos : 非常适合博客的主题,具体效果可查看 架构文摘 博客