docker--Docker-Compose快速搭建个人博客WordPress

Compose快速搭建个人博客wordpress

如果我们不使用docker-compose部署wordpress,那么我们就要单独部署mysql和wordpress的容器,这样每个容器的管理就比较麻烦。

官网:https://docs.docker.com/compose/wordpress/

创建docker-compose.yml

version: '3.3'

services:
   db:
     image: mysql:5.7
     volumes:
       - db_data:/var/lib/mysql
     restart: always
     environment:
       MYSQL_ROOT_PASSWORD: somewordpress
       MYSQL_DATABASE: wordpress
       MYSQL_USER: wordpress
       MYSQL_PASSWORD: wordpress

   wordpress:
     depends_on:
       - db
     image: wordpress:latest
     ports:
       - "8000:80"
     restart: always
     environment:
       WORDPRESS_DB_HOST: db:3306
       WORDPRESS_DB_USER: wordpress
       WORDPRESS_DB_PASSWORD: wordpress
       WORDPRESS_DB_NAME: wordpress
volumes:
    db_data: {}

在配置文件目录下启动

docker-compose up -d

查看

浏览器访问宿主机的8000端口

将删除容器和默认网络,但会保留WordPress数据库: docker-compose down

将删除容器,默认网络和WordPress数据库: docker-compose down --volumes

version: '3.3'

services:
   db:
     # docker run -itd mysql:5.7
     image: mysql:5.7
     volumes:
       # 采用的是卷标的形式挂载(注意:- db_data是参数,可以变,自定义,必须与下面对应)
       - db_data:/var/lib/mysql
     # 自动重启,保证服务在线
     restart: always
     environment:
       MYSQL_ROOT_PASSWORD: somewordpress
       MYSQL_DATABASE: wordpress
       MYSQL_USER: wordpress
       MYSQL_PASSWORD: wordpress

   wordpress:
     # - db 是参数,合起来的意思是只有当上面的mysql数据库安装成功后,这个wordpress才可以
     # 被安装,还有一个功能,就是docker --link 将上面的mysql数据库,与这个wordpress应用连起来
     depends_on:
       - db
     image: wordpress:latest
     ports:
       - "8000:80"
     restart: always
     environment:
       WORDPRESS_DB_HOST: db:3306
       WORDPRESS_DB_USER: wordpress
       WORDPRESS_DB_PASSWORD: wordpress
       WORDPRESS_DB_NAME: wordpress
volumes:
    db_data: {}

docker-compose中有两种方式可以设置volumes

1.使用具体路径直接挂载到本地,特点就是直观

2.使用卷标的形式,特点就是简洁,但是不知道数据到底在本地的什么位置。需要通过卷标查看

  • docker volume ls
  • docker volume inspect wordpress_db_data

猜你喜欢

转载自www.cnblogs.com/zouzou-busy/p/12149374.html