0


云原生Kubernetes系列 | 通过容器互联搭建wordpress博客系统

云原生Kubernetes系列 | 通过容器互联搭建wordpress博客系统

   通过容器互联搭建一个

wordpress

博客系统。

wordpress

系统是需要连接到数据库上的,所以

wordpress

mysql

的镜像都是需要的。

wordpress

在创建过程中需要指定一些参数。创建

mysql

容器时需要把

mysql

的数据保存在宿主机本地。

[root@docker ~]#  docker run -tid \
--name db \
--restart always \
-v /root/db:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=rootroot \
-e MYSQL_DATABASE=wordpress \
mysql

# /root/db是本地宿主机目录,无需提起创建,执行上述命令时会自动创建出来
[root@docker ~]# docker ps -a
CONTAINERIDIMAGECOMMANDCREATEDSTATUSPORTSNAMES
5e8a28631ac7   mysql     "docker-entrypoint.s…"4 minutes ago   Up 4 minutes   3306/tcp,33060/tcp   db
[root@docker ~]# docker inspect db
......"Networks":{"bridge":{"IPAMConfig":null,"Links":null,"Aliases":null,"NetworkID":"832db6b8b12f8b969c04f53768cb8ff51d421c9d14d273dbc54797b4f2f9e051","EndpointID":"cdee5e5b8e9d28c638b7b27b8a30d4c73900c86c0a9c6fdfa32eccad07dad216","Gateway":"172.17.0.1","IPAddress":"172.17.0.2",  # 数据库的连接地址
                    "IPPrefixLen":16,"IPv6Gateway":"","GlobalIPv6Address":"","GlobalIPv6PrefixLen":0,"MacAddress":"02:42:ac:11:00:02","DriverOpts":null

   登录数据库查看创建的

wordpress 

数据库:

[root@docker ~]# yum install -y mariadb
[root@docker ~]# mysql -u root -h172.17.0.2-p
Enter password: 
Welcome to the MariaDB monitor.  Commands end with; or \g.
Your MySQL connection id is 8
Server version:8.0.27 MySQL Community Server -GPLCopyright(c)2000,2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h'for help. Type '\c' to clear the current input statement.

MySQL [(none)]> show databases;+--------------------+| Database           |+--------------------+| information_schema || mysql              || performance_schema || sys                || wordpress          |+--------------------+5 rows inset(0.009 sec)

   数据库数据保存到了宿主机的本地:

[root@docker ~]# ls /root/db/
 auto.cnf        binlog.index      client-key.pem       ib_buffer_pool   ibtmp1          performance_schema   server-key.pem   wordpress
 binlog.000001   ca-key.pem        def92ba0b44e.err     ibdata1         '#innodb_temp'   private_key.pem      sys
 binlog.000002   ca.pem           '#ib_16384_0.dblwr'   ib_logfile0      mysql           public_key.pem       undo_001
 binlog.000003   client-cert.pem  '#ib_16384_1.dblwr'   ib_logfile1      mysql.ibd       server-cert.pem      undo_002

   当数据库创建好之后,创建wordpress的时候,需要指定数据库的一些参数:
   ●

WORDPRESS_DB_HOST

:博客系统要连接到哪台主机上(DB所在的容器上)
   ●

WORDPRESS_DB_USER

:博客系统要使用哪个用户对接
   ●

WORDPRESS_DB_PASSWORD

:连接数据库的密码是什么
   ●

WORDPRESS_DB_NAME

:连接的数据库名称

如下方式有一个严重的弊端,就是数据库一旦重建,那么IP地址就会变化,将会导致wordpress博客无法使用

docker run -tid \
--name blog \
-v /root/web:/var/www/html \
-p 80:80 \
-e WORDPRESS_DB_HOST=172.17.0.2 \
-e WORDPRESS_DB_USER=root \
-e WORDPRESS_DB_PASSWORD=rootroot \
-e WORDPRESS_DB_NAME=wordpress \
wordpress
[root@docker ~]# docker rm -f blog

   需要加一个参数

--link

来防止数据库重建后IP地址的变化问题:

docker run -tid \
--name blog \
-v /root/web:/var/www/html \
-p 80:80 \
--link db:db_alias \
-e WORDPRESS_DB_HOST=db_alias \
-e WORDPRESS_DB_USER=root \
-e WORDPRESS_DB_PASSWORD=rootroot \
-e WORDPRESS_DB_NAME=wordpress \
wordpress

# 上面启动的数据库名称是db,启动wordpress给连接的数据库起一个别名叫db_alias,WORDPRESS_DB_HOST使用别名db_alias连接数据库

   博客数据保存到了宿主机的本地:

[root@docker ~]# ls /root/web/
index.php    wp-activate.php     wp-comments-post.php  wp-config-sample.php  wp-includes        wp-login.php     wp-signup.php
license.txt  wp-admin            wp-config-docker.php  wp-content            wp-links-opml.php  wp-mail.php      wp-trackback.php
readme.html  wp-blog-header.php  wp-config.php         wp-cron.php           wp-load.php        wp-settings.php  xmlrpc.php

如果再重建数据库容器,

db

这个名称不能变,别名可以随意起

   接下来开始安装部署博客系统:
在这里插入图片描述
   下一个安装界面没有提示需要输入连接数据库的信息,就说明我们上面的步骤是正确的(因为上面的步骤已经配置了连接数据库的信息)

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


本文转载自: https://blog.csdn.net/wangzongyu/article/details/134387328
版权归原作者 降世神童 所有, 如有侵权,请联系我们删除。

“云原生Kubernetes系列 | 通过容器互联搭建wordpress博客系统”的评论:

还没有评论