使用Docker Compose快速搭建Wordpress
Compose 介绍
Compose
项目是 Docker 官方的开源项目,负责实现对 Docker 容器集群的快速编排。
在日常工作中,经常会碰到需要多个容器相互配合来完成某项任务的情况。例如要实现一个 Web 项目,除了 Web服务容器本身,往往还需要再加上后端的数据库服务容器,甚至还包括负载均衡容器等。
Compose
恰好满足了这样的需求。它允许用户通过一个单独的 docker-compose.yml
模板文件(YAML 格式)来定义一组相关联的应用容器为一个项目。
Compose
中有两个重要的概念:
服务 (
service
):一个应用的容器,实际上可以包括若干运行相同镜像的容器实例。项目 (
project
):由一组关联的应用容器组成的一个完整业务单元,在docker-compose.yml
文件中定义。
安装
在 Linux 上的也安装十分简单,从 官方 GitHub Release 处直接下载编译好的二进制文件即可。
例如,在 Linux 64 位系统上直接下载对应的二进制包。
1 | $ sudo curl -L https://github.com/docker/compose/releases/download/1.17.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose |
查看
1 | $ docker-compose --version |
常用命令
可以通过--help
查看
1 | docker-compose --help |
1 | build Build or rebuild services |
build
构建项目中的服务容器
1
docker-compose build [options] [SERVICE...]
up
尝试自动完成包括构建镜像,(重新)创建服务,启动服务,并关联服务相关容器的一系列操作。
down
此命令将会停止 up 命令所启动的容器,并移除网络
scale
设置指定服务运行的容器个数
Compose 模板文件
默认的模板文件名称为 docker-compose.yml,格式为 YAML 格式。
1
2
3
4
5
6
7
8
9 version: "3"
services:
webapp:
image: examples/web
ports:
- "80:80"
volumes:
- "/data"
注意每个服务都必须通过 image 指令指定镜像或 build 指令(需要 Dockerfile)等来自动构建生成镜像。
创建Wordpress环境
Compose
可以很便捷的让 Wordpress
运行在一个独立的环境中。
创建空文件夹
假设新建一个名为 wordpress
的文件夹,然后进入这个文件夹。
创建 docker-compose.yml
文件
docker-compose.yml
文件将开启一个 wordpress
服务和一个独立的 MySQL
实例:
1 | version: "3" |
构建并运行项目
运行 docker-compose up -d
Compose 就会拉取镜像再创建我们所需要的镜像,然后启动 wordpress
和数据库容器。 接着浏览器访问 127.0.0.1:8000
端口就能看到 WordPress
安装界面了。
查看
docker ps
查看
1 | CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES |
看到可以通过8000端口测试
浏览器访问http://localhost:8000
, 可以看到wordpress的安装界面,这样就快速的搭建了一个Wordpress的独立运行环境