前言对于后端开发人员,经常需要使用数据库,在本地安装数据库麻烦且易出错,利用Docker能非常快速的拉启所需数据库环境,不用的时候可以删掉,如果需要本地存储数据可以使用单独数据目录挂在到容器内,本文简单列举几类常用数据库。
一.MySQL#拉取镜像dockerpullmysql:8.0.19#启动serverdockerrun--namemysql01-p13306:3306-eMYSQL_ROOT_PASSWORD=mysqladmin-dmysql:8.0.19#启动客户端,输入密码:mysqladmindockerrun-it--networkhost--rmmysqlmysql-h127.0.0.1-P13306--default-character-set=utf8mb4-uroot-p二.Redis#拉取redisdockerpullredis#启动redisdockerrun-itd--nameredis01-p6379:6379--requirepass"redisadmin"redis#使用客户端链接redisdockerexec-itredis01/bin/bash三.Etcd#拉去镜像dockerpullappcelerator/etcd:latest#启动dockerrun--nameetcd01-d-p2379:2379-p2380:2380appcelerator/etcd--listen-client-urlshttp://0.0.0.0:2379--advertise-client-urlshttp://0.0.0.0:2379#客户端链接dockerexec-itetcd01/bin/bash四.Elasticsearch#拉取镜像dockerpullelasticsearch:latest#启动dockerrun--namees01-d-p9200:9200-p9300:9300-e"discovery.type=single-node"-e"ES_JAVA_OPTS=-Xms1g-Xmx1g"elasticsearch:latest#使用head客户端链接dockerpullmobz/elasticsearch-head:5#启动header容器dockerrun-d--namemy-es_admin-p9100:9100mobz/elasticsearch-head:5#curl测试访问第一次打开浏览器header访问,连接的服务地址是localhost:9200,修改为docker所在的ip。此时出现连接失败,需要修改镜像的elasticsearch.yml文件,添加
http.cors.enabled:truehttp.cors.allow-origin:"*"#重启esdockerrestartes01dockerrestartmy-es-head五.MongoDB#拉取镜像dockerpullmongo:lastest#启动dockerrun--namemongodb01-p27017:27017-dmongo:latest#客户端链接以admin进入容器dockerexec-itmongodb01mongoadmin六.postgre#下载dockerpullpostgres:12#启动dockerrun--namepg01-ePOSTGRES_PASSWORD=pgadmin-p54320:5432-dpostgres:12#客户端链接dockerexec-itpg01/bin/bash结尾本文通过利用Docker容器化封装的能力,将含有镜像直接从仓库拉取下来后,通过命令行运行,并将指定端口映射到本地。然后本地开发的时候,并不需要去关注数据库的配置和安装了,简单来说,就是查询镜像、拉取镜像、运行镜像。简单的三部操作就可以拥有一个配置好的需求数据库环境。