Dokcer14_5:Docker Compose搭建博客wordpress

Dokcer14_5:Docker Compose搭建博客wordpress

  • WordPress介绍
  • 定义项目
    • 1.创建一个空的项目目录。
    • 2.更改到您的项目目录
    • 3.创建一个docker-compose.yml
  • 构建项目
  • 浏览访问WordPress
  • 数据卷查看
  • 关闭和清理

docker官方网址:https://docs.docker.com/samples/wordpress/

WordPress介绍

可以使用Docker Compose在用Docker容器构建的隔离环境中轻松运行WordPress。本快速入门指南演示了如何使用撰写来设置和运行WordPress。开始之前,请确保您已经已安装撰写.

定义项目

1.创建一个空的项目目录。

你可以给目录起个容易记住的名字。该目录是应用程序映像的上下文。目录应该只包含构建该映像的资源。

该项目目录包含一个docker-compose.yml这个文件本身对于一个好的starter wordpress项目来说是完整的。

可以使用.yml或者.yaml此文件的扩展名都可以。

2.更改到您的项目目录

例如,如命名了目录my_wordpress:

 cd my_wordpress/

3.创建一个docker-compose.yml

创建一个docker-compose.yml启动您的WordPress博客和单独的MySQL具有用于数据持久性的卷装载的实例:

# compose版本,向下兼容,我选的最高版本
version: "3.9"

# 定义服务    
services:
  db:
    image: mysql:5.7
    # 具名挂载数据卷,后面为对应容器内部地址,生成的本机目录格式:/var/lib/docker/volumes/服务名_卷名
    volumes:
      - db_data:/var/lib/mysql
    # 定义总是重启,docker重启之后会自动启动应用
    restart: always
    environment:
      # 此变量是强制性的,并指定将为MySQL超级用户帐户设置的密码
      MYSQL_ROOT_PASSWORD: somewordpress
      MYSQL_DATABASE: wordpress
      MYSQL_USER: wordpress
      MYSQL_PASSWORD: wordpress
    
  wordpress:
    depends_on:
      - db
    image: wordpress:latest
    # 具名挂载数据卷,后面为对应容器内部地址,生成的本机目录格式:/var/lib/docker/volumes/服务名_卷名
    volumes:
      - wordpress_data:/var/www/html
    # 暴露端口,外部8000对应容器80
    ports:
      - "8000:80"
    # 定义总是重启,docker重启之后会自动启动应用
    restart: always
    environment:
      WORDPRESS_DB_HOST: db
      WORDPRESS_DB_USER: wordpress
      WORDPRESS_DB_PASSWORD: wordpress
      WORDPRESS_DB_NAME: wordpress
volumes:
  db_data: {}
  wordpress_data: {}

注意:

docker 数据卷db_data和wordpress_data是WordPress对数据库的更新,以及安装的主题和插件。WordPress多站点仅在端口上工作80和443.

MySQL环境变量可以参考文章:docker安装MySQL并同步数据到本机

构建项目

执行docker-compose up -d再项目目录中。

这个运行docker-compose up在分离模式下,提取所需的Docker镜像,并启动wordpress和数据库容器,如下例所示。

docker-compose up -d
注意:WordPress Multisite仅在端口上工作80和/或443。如果您收到关于绑定的错误消息0.0.0.0到港口80或者443(取决于您指定的端口),很可能您为WordPress配置的端口已经被另一个服务使用。

浏览访问WordPress

此时,WordPress应该在端口上运行8000你可以作为WordPress管理员完成“著名的五分钟安装”。

注意:WordPress站点不能立即在端口上使用8000因为容器仍在初始化中,在第一次加载之前可能需要几分钟。

如果您使用的本地,您可以使用http://localhost作为IP地址,并打开http://localhost:8000在网络浏览器中。
Dokcer14_5:Docker Compose搭建博客wordpress_第1张图片
Dokcer14_5:Docker Compose搭建博客wordpress_第2张图片
Dokcer14_5:Docker Compose搭建博客wordpress_第3张图片

数据卷查看

[root@VM-0-3-centos pdx_haokai]# docker volume ls
DRIVER    VOLUME NAME
local     3a3d57ad35507c7833513f55243cd9e1656da241b58b68aab48e5a3c6c55a6d9
local     docker-compose_db_data
local     docker-compose_wordpress_data
[root@VM-0-3-centos pdx_haokai]# docker volume inspect docker-compose_db_data
[
    {
        "CreatedAt": "2022-01-27T22:12:34+08:00",
        "Driver": "local",
        "Labels": {
            "com.docker.compose.project": "docker-compose",
            "com.docker.compose.version": "1.28.5",
            "com.docker.compose.volume": "db_data"
        },
        "Mountpoint": "/var/lib/docker/volumes/docker-compose_db_data/_data",
        "Name": "docker-compose_db_data",
        "Options": null,
        "Scope": "local"
    }
]
[root@VM-0-3-centos pdx_haokai]# cd /var/lib/docker/volumes/docker-compose_db_data/_data
[root@VM-0-3-centos _data]# ll
total 188480
-rw-r----- 1 polkitd input       56 Jan 27 22:12 auto.cnf
-rw------- 1 polkitd input     1676 Jan 27 22:12 ca-key.pem
-rw-r--r-- 1 polkitd input     1112 Jan 27 22:12 ca.pem
-rw-r--r-- 1 polkitd input     1112 Jan 27 22:12 client-cert.pem
-rw------- 1 polkitd input     1676 Jan 27 22:12 client-key.pem
-rw-r----- 1 polkitd input     1352 Jan 27 22:12 ib_buffer_pool
-rw-r----- 1 polkitd input 79691776 Jan 27 22:21 ibdata1
-rw-r----- 1 polkitd input 50331648 Jan 27 22:21 ib_logfile0
-rw-r----- 1 polkitd input 50331648 Jan 27 22:12 ib_logfile1
-rw-r----- 1 polkitd input 12582912 Jan 27 22:21 ibtmp1
drwxr-x--- 2 polkitd input     4096 Jan 27 22:12 mysql
drwxr-x--- 2 polkitd input     4096 Jan 27 22:12 performance_schema
-rw------- 1 polkitd input     1680 Jan 27 22:12 private_key.pem
-rw-r--r-- 1 polkitd input      452 Jan 27 22:12 public_key.pem
-rw-r--r-- 1 polkitd input     1112 Jan 27 22:12 server-cert.pem
-rw------- 1 polkitd input     1676 Jan 27 22:12 server-key.pem
drwxr-x--- 2 polkitd input    12288 Jan 27 22:12 sys
drwxr-x--- 2 polkitd input     4096 Jan 27 22:16 wordpress
[root@VM-0-3-centos _data]#

关闭和清理

命令docker-compose down移除容器和默认网络,但保留的WordPress数据库。

命令docker-compose down --volumes删除容器、默认网络和WordPress数据库。

你可能感兴趣的:(docker,docker,容器,mysql)