使用docker&docker-compose创建常见的数据库(MySQL/Postgres/MongoDB)
本文介绍了常见的数据库MySQL、Postgre、MongoDB使用docker安装方式快速安装。
MySQL
docker run命令
配置了utf8的格式与utf8-bin的编码:
1 | docker run -itd --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -p 3306:3306 -v /my/own/datadir:/var/lib/mysql lw96/mysql5.7 |
参数说明:
some-mysql
容器名称MYSQL_ROOT_PASSWORD
设置的root用户的密码-p
是指定宿主端口:容器内服务端口
,默认3306
lw96.mysql5.7
这个是我自己封装的MySQL镜像,设置好了utf8的编码-v
设置数据库文件的映射,把宿主机上的目录/my/own/datadir
与容器内的/var/lib/mysql
作关联关系
使用docker-compose
如果是docker-compose.yml
脚本:
1 | version: '3' |
Progres
docker run命令
1 | docker run -itd --name postgres_container --restart=unless-stopped -p 5432:5432 -v $pwd/postgres:/data/postgres -e POSTGRES_USER=postgres -e POSTGRES_PASSWORD=changeme -e PGDATA=/data/postgres postgres |
参数说明:
postgres_container
容器名称-p
是指定宿主端口:容器内服务端口
,默认5432
POSTGRES_USER
数据库用户,POSTGRES_PASSWORD
数据库密码,PGDATA
数据库在容器内的数据路径-v
设置数据库文件的映射,把宿主机上的目录$pwd/postgres
与容器内的/data/postgres
作关联关系
使用docker-compose
1 | version: '3.5' |
上面的配置,会默认启动一个web的管理界面pgadmin
,用于管理postgres
数据。
- 访问postgres,使用navicat填入如下的信息:
localhost:5432
用户名:postgres
(默认)
密码:changeme
(默认) - 或者使用web浏览器进入PgAdmin
网址:http://localhost:5050
用户名: pgadmin4@pgadmin.org (默认)
密码:admin
(默认)
MongoDB
docker run命令
1 | docker run -itd --name mongodb -p 27017:27017 -v /data/db:/data/db --restart=always -e MONGO_INITDB_ROOT_USERNAME=root -e MONGO_INITDB_ROOT_PASSWORD=changeme mongo |
参数说明:
mongodb
容器名称-p
是指定宿主端口:容器内服务端口
,默认27017
-v
设置数据库文件的映射MONGO_INITDB_ROOT_USERNAME
数据库初始的管理员用户名,MONGO_INITDB_ROOT_PASSWORD
初始的管理员密码
使用docker-compose
1 | version: '3' |
相关文章