emmm...2020年了,这次我们使用docker-compose来一键安装它们。
首先,你的电脑上需要安装docker和docker-compose
然后,随便找个文件夹开始编写docker-compose.yaml文件
# docker-compose.yaml
version: '3'
services:
mongo:
image: mongo:latest
container_name: mongo
ports:
- "27017:27017"
restart: always
environment:
- MONGO_INITDB_ROOT_USERNAME=root
- MONGO_INITDB_ROOT_PASSWORD=123456
volumes:
- ./data:/data/db
- /usr/share/zoneinfo/Asia/Shanghai:/etc/localtime:ro
logging:
driver: "journald"
mongo-express:
image: mongo-express:latest
container_name: mongo-express
links:
- mongo
restart: always
ports:
- "9069:8081"
environment:
- ME_CONFIG_OPTIONS_EDITORTHEME=3024-night
- ME_CONFIG_BASICAUTH_USERNAME=sixah
- ME_CONFIG_BASICAUTH_PASSWORD=123456
- MECONFIG_MONGODB_ADMINUSERNAME=root
- MECONFIG_MONGODB_ADMINPASSWORD=123456
logging:
driver: "journald"
编写完docker-compose.yaml文件
执行命令docker-compose up -d
然后
docker ps
看一下,可以看到两个容器已经跑起来了在浏览器中输入localhost:9069
,会出现mongo-express的登录界面,用户名是sixah
,
密码是123456
接下来,就可以愉快的操作mongoDB数据库了。
写出来的表格太丑了,还没找到解决的办法,影响观看体验,然后我就截了个图
表格也放在下面吧,内容都是一样的
参数 | 作用 |
---|---|
image | 指定服务的镜像名称(本地不存在,docker-compose会自动从docker镜像库拉取) |
container_name | 为容器起别名,而不是使用默认的名称 |
ports | 映射的端口号(类似docker run -p 参数) |
restart | 容器退出后的重启策略,默认参数no 容器退出时不重启,on-failure[:max-retries] 只在容器以非0状态码退出时重启,可选参数是尝试重启容器的次数,always 无论容器退出状态码是什么始终重启容器,unless-stopped 容器退出始终重启容器,但是不包括在Docker守护进程启动时就已经停止了的容器 |
environment | 容器环境变量(类似docker run -e 参数) |
volumes | 挂载目录或一个已存在的数据卷容器(类似docker run -v 参数) |
logging | 配置容器日志服务 |
driver | logging标签下二级标签,默认参数json-file ,可以通过docker-compose logs查看日志,参数journald 也是可以通过docker-compose查看日志。(还有其他参数,太多了写不下,自行查看吧) |
links | 连接其他容器(类似docker run --link 参数) |