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

posted @   邹邹很busy。  阅读(436)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
点击右上角即可分享
微信分享提示

目录导航