程序笔记   发布时间:2022-06-30  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了使用docker compose快速搭建wordpress博客大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

@H_262_8@文章目录
    • 一、3分钟完成wordpress安装
    • 二、背后隐藏了什么?
    • 三、再深入一点:数据到底存哪了?

一、3分钟完成wordpress安装

废话不多说上来就安装࿰c;先看疗效再看药理。这个安装过程就这么三步࿰c;需要多长时间呢?如果网络条件好的话࿰c;大概三分钟就搞定。(使用docker compose安装的前提是你的服务器已经安装了docker࿰c;怎么安装?可以看我的《CentOS操作系统安装DockerCE》) 第一步: 安装Docker Compose࿰c;使用下面的命令行直接安装。实际上该命令的作用就是下载docker compose二进制文件࿰c;并将二进制文件存储到/usr/local/bin目录࿰c;并重命名为docker-compose。

$ sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

第二步: 书写一个docker compose配置文件docker-compose.ymlc;我已经书写好了࿰c;大家去这里下载docker-compose.yml 。这个文件定义的内容我会在后文为大家讲解。

第三步:docker-compose.yml的同一个目录下执行命令/usr/local/bin/docker-compose up -d 完成服务启动。就是这么简单我已经安装完成了࿰c;访问http://<linux宿主机服务器>:8000你会看到下图࿰c;按照图形提示一步一步的设置你的博客就可以了。同样的你使用mysql客户端࿰c;可以访问该宿主机的3306端口࿰c;查看数据库数据。

使用docker compose快速搭建wordpress博客

二、背后隐藏了什么?

docker compose可以认为是一组容器服务的组合࿰c;容器服务的定义方式核心的三段:version指定docker-compose.yml 文件的版本;services配置容器组合中包含哪些具体的服务;volumes用于定义容器中目录与宿主机之间的目录映射。我们来重点说明下services配置段启动的两个服务容器:mysql和wordpress࿰c;做了哪些配置。

  • 第一段db定义了一个mysql数据库c;使用的docker容器镜像是@H_890_30@mysql:5.7;volumes将容器内的数据持久化保存到宿主机࿰c;避免容器服务重启之后数据库数据丢失。restart表示容器如果是停止状态(如果不是人为停止)࿰c;会尝试重启保持服务运行。environment定义了一些环境变量࿰c;比如:mysql的root密码࿰c;数据库实例名称࿰c;访问该mysql实例的用户名࿰c;密码(可以根据自己的需要修改哦)。
   db:
     image: mysql:5.7
     volumes:
       - db_data:/var/lib/mysql
     restart: always
     environment:
       @H_903_94@mYSQL_ROOT_password: somewordpress
       @H_903_94@mYSQL_DATABASE: wordpress
       @H_903_94@mYSQL_USER: wordpress
       @H_903_94@mYSQL_password: wordpress
  • 第二段wordpress容器服务c;depends_on表示该容器服务依赖于上文的mysql࿰c;需要先启动mysql容器࿰c;再启动wordpress容器; image表示默认使用的容器镜像是wordpress最新版(latest),这个容器镜像里面默认安装了apache web服务、php相关的依赖、mysql客户端等; ports表示端口映射࿰c;将容器内apache服务的80端口映射到宿主机的8000端口;environment指定了一些环境变量࿰c;用于访问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定义/var/lib/mysql映射到磁盘本地路径࿰c;我们并没有具体定义磁盘本地路径的位置࿰c;那么mysql的数据文件保存到哪里了? 我们通过docker inspect compose_db_1命令来查看一下࿰c;其中compose_db_1是上文中mysql镜像运行的服务容器名称。composedocker-compose.yml 文件所在父目录的名称࿰c;db是上文中service定义的名称࿰c;1就是一个自增序号。

        "Mounts": [
            {
                "type": "volume",
                "Name": "compose_db_data",
                "source": "/var/lib/docker/volumes/compose_db_data/_data",
                "DesTination": "/var/lib/mysql",
                "Driver": "local",
                "Mode": "rw",
                "RW": true,
                "Propagation": ""
            }
        ]

我们可以看到"source": "/var/lib/docker/volumes/compose_db_data/_data",这里表示的就是上文中启动的mysql容器的默认持久化数据保存路径。那么下一个问题࿰c;如果我们不希望保存到这个路径怎么办?

     volumes:
       - db_data:/var/lib/mysql

docker-compose.yml配置文件改成这样即可

     volumes:
       - <你希望指定的本地宿主机绝对路径>:/var/lib/mysql

本文只是用一个最简单的例子c;来向大家说明docker compose的高效、简洁。如果想要深入的学习docker、docker compose可不是这一篇文章能搞定的。那么我们一起向前进!

大佬总结

以上是大佬教程为你收集整理的使用docker compose快速搭建wordpress博客全部内容,希望文章能够帮你解决使用docker compose快速搭建wordpress博客所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。