docker-compose可以一次性开启多个docker实例,这一点比Dockerfile来构建docker容器要方便的多。docker-compose的重点是对yml文件的配置。yml文件的配置需要注意的是严格控制缩进。
需要说明的一点是docker-compose命令并不是随着docker安装一起安装的,他需要额外的安装,如果没有安装,可以在github上下载对应系统的版本:https://github.com/docker/compose/。如果是linux系统,下载解压后将可执行命令docker-compose放入/usr/bin目录并赋予可执行的属性:chmod +x /usr/bin/docker-compose。
mongodb容器构建其实很简单,就是需要指定镜像来源,如果需要开启认证,需要配置环境变量MONGO_INITDB_ROOT_USERNAME和MONGO_INITDB_ROOT_PASSWORD。一般我们希望对镜像中的磁盘做外部映射,这样即使容器退出了,下次启动,容器中保留的数据不会丢失。
下面给出mongodb的docker-compose配置。
docker-compose-mongodb.yml
version: '3'
services:
mongodb:
image: mongo:latest
restart: always
volumes:
- /data/mongo/db:/data/db
- /data/mongo/log:/var/log/mongodb
ports:
- 27018:27017
environment:
MONGO_INITDB_ROOT_USERNAME: admin
MONGO_INITDB_ROOT_PASSWORD: admin
<