文章目录
一. Docker Compose 的能力
Docker Compose 通过一个 YAML 文件来定义应用的服务、网络和卷等,实现单宿主机下启动多容器的部署和管理。
二. 部署博客系统(博客+mysql)
1. docker命令部署
bitnami部署文档:
https://hub.docker.com/r/bitnami/wordpress?uuid=DEB26A7C-3F72-4B06-AA81-1A5A78638230
#创建网络
docker network create wordpress-network
创建数据库
docker run -d --name mariadb \
--env ALLOW_EMPTY_PASSWORD=yes \
--env MARIADB_USER=bn_wordpress \
--env MARIADB_PASSWORD=bitnami \
--env MARIADB_DATABASE=bitnami_wordpress \
--network wordpress-network \
--volume mariadb_data:/bitnami/mariadb \
bitnami/mariadb:latest
docker volume create --name wordpress_data
docker run -d --name wordpress \
-p 18080:8080 -p 8443:8443 \
--env ALLOW_EMPTY_PASSWORD=yes \
--env WORDPRESS_DATABASE_USER=bn_wordpress \
--env WORDPRESS_DATABASE_PASSWORD=bitnami \
--env WORDPRESS_DATABASE_NAME=bitnami_wordpress \
--network wordpress-network \
--volume wordpress_data:/bitnami/wordpress \
bitnami/wordpress:latest
访问:
2. Compose文件部署多应用
# 包含4个一级key:version、services、networks、volumes。
# 一. 服务
services:
mariadb:
# 1. 容器名称
# 如果不配置container_name
# a.容器的名称以项目名称(所在目录名称)为前缀。
# b. 以一个数字为后缀用于标识容器实例序号——因为Docker Compose允许扩缩容。
container_name: mariadb
# 2.本地镜像
image: bitnami/mariadb:latest
# 3. 端口映射
ports:
- '13306:3306'
# 4. 卷映射
## 会创建一个卷:如果容器中此目录下有则不用
volumes:
- 'mariadb_data:/bitnami/mariadb'
# 5. 环境变量映射
environment:
# ALLOW_EMPTY_PASSWORD is recommended only for development.
- ALLOW_EMPTY_PASSWORD=yes
- MARIADB_USER=bn_wordpress
- MARIADB_DATABASE=bitnami_wordpress
# 6. 重启策略
## always:开机就重启
restart: always
# 7. 网络:
networks:
- blog
wordpress:
container_name: wordpress