程序员

docker快速搭建wordpress

2020-03-15  本文已影响0人  pharoskgg

首语

​ 最近由于疫情原因,阿里云出了在家实践活动免费送主机,早起两天就抢到啦。有了服务器当然第一件事就是建站!

为什么使用docker

  1. 资源隔离,环境破环重新运行一个容器即可

    1. 服务运行在容器中, 减少一般黑客的攻击

    2. 考虑到一年免费时间过后博客网站必定迁移,使用docker只需将容器复制即可轻松迁移。

      由此利用docker搭建wordpress。

安装docker

​ 系统安装的方式不一样,以下环境均在Ubuntu16.04上运行。下面上代码

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

​ 很简单,一行命令搞定,这是官方的脚本,后面跟的是阿里云镜像。等待安装完成之后将用户添加至docker组,否则可能没有权限执行某些操作,当然如果你是root用户就当我没说吧。

sudo usermod -aG docker your-user

配置镜像docker镜像源

​ 如果不配置docker的镜像源,从官方下载可能速度会太慢,因为dockerhub站点在国外。

vim /etc/docker/daemon.json
#添加如下内容,如果没有此文件新建一个即可
{
    "registry-mirrors": [
        "https://dockerhub.azk8s.cn",
        "https://reg-mirror.qiniu.com",
        "https://registry.docker-cn.com"
    ]
}

拉取镜像

docker pull wordpress
docker pull mysql:5.7

创建容器之间的小型局域网

docker network create wpmysql
## 运行MySQL数据库容器
docker run -d -i -t --name mysql --network wpmysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD='root'  mysql:5.7

​ 参数解释:- -d 使容器后台运行 -i -t 起到能与容器经行交互式的作用 --name 给你的容器起个名字 --network 将此容器添加至哪个网络 -p 容器与宿主机之间的端口映射(宿主机端口 :容器端口) -e 此容器自定义参数 MSQL_ROOT_PASSWORD设置此容器MySQL数据库的root初始密码

进入MySQL容器

docker exec -it mysql bash
#连接容器之后连接容器的mysql数据库
mysql -u root -p
#执行已下命令创建用户、数据库、给用户赋权
create database if not exists wordpress;
create user 'username'@'%' identified by 'password';
grant all on wordpress.* to 'username'@'%';

运行wordpress容器

docker run -d -i -t --name wordpress --network wpmysql -p 8080:80 --link mysql wordpress

登入wordpress

​ 用浏览器地址栏输入:http:yourip:8080即可登入wordpress的设置界面数据库主机那一栏输入 mysql其余看提示应该没有问题

可能出现的意外情况

  1. 端口未开放,使得输入 http:yourip:8080 显示无法连接,此时请找百度查看本机端口8080、3306是否开放

  2. wordpress站点只能为英文,不能下载主题,不能更换语言,显示too many requests,具体原因百度搜索。

    解决方法:

    1. 插件中心搜索WP-China-Yes这是国人开发的插件,插件里有介绍不在此赘述。此时可更新主题、博客语言

    2. 走到运行wordpress容器这一步运行完之后,进入此搭载wordpress的容器docker exec -it wordpress bash此容器删除/var/www/html目录下的所有文件rm -rf *。移步至本地用迅雷(或其他下载软件)下载https://cn.wordpress.org/wordpress-5.3.2-zh_CN.tar.gz然后上传至服务器(不会请百度,用scp,或filezilla),解压此文件tar -zxvf wordpress-5.3.2-zh_CN.tar.gz然后将文件夹传送搭载wordpress的容器docker cp wordpress wordpress:/var/www/html修改文件夹的所属组chown -R www-data:www-data wordpress此时浏览器访问http://your-ip:8080/wordpress即可进入wordpress安装界面,不过同样最好下载WP-China-Yes否则主题等之类的还是不能正常更新。

上一篇下一篇

猜你喜欢

热点阅读