docker常规数据库使用

redis

docker官方镜像文档:https://github.com/docker-library/docs

下拉redis

docker pull redis

创建存储路径

mkdir -p /home/docker_dir/redis

创建配置文件

从官网下载redis.conf配置文件,

wget http://download.redis.io/redis-stable/redis.conf

更改配置文件

bind 0.0.0.0 # 解除本地连接限制
protected-mode no # 默认yes,如果设置为yes,则只允许在本机的回环连接,其他机器无法连接。
daemonize no # 默认no 为不守护进程模式,docker部署不需要改为yes,docker run -d本身就是后台启动,不然会冲突
requirepass 123456 # 设置密码
appendonly yes # 持久化

添加权限

chmod 777 redis.conf

启动redis

docker run --name redis -p 6379:6379 
--privileged=true
--restart=always
-v /home/docker_dir/redis/data:/data 
-v /home/docker_dir/redis/redis.conf:/etc/redis/redis.conf 
-d redis redis-server /etc/redis/redis.conf --appendonly yes

mysql

下拉mysql

docker pull mysql:5.7

创建存储路径

mkdir -p /home/docker_dir/mysql/data

启动mysql

# 指定数据卷,再创建数据库
docker run --name mysql 
--privileged=true
--restart=always
-v /home/docker_dir/mysql/data:/var/lib/mysql 
-e MYSQL_ROOT_PASSWORD=root 
-e LANG=C.UTF-8 
-e TZ=Asia/Shanghai 
-p 3306:3306 -d mysql:5.7 
--character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci

其他问题

# 创建数据库
create database information DEFAULT CHARSET utf8;
# 编码问题
docker exec -it 3b env LANG=C.UTF-8 bash

mongodb

下拉mongo

docker pull mongo

启动mongodb

docker run -d -p 27017:27017 --privileged=true --restart=always --name mongodb 
-e MONGO_INITDB_ROOT_USERNAME=用户名 -e MONGO_INITDB_ROOT_PASSWORD=密码 
-v $PWD/db:/data/db mongo

开启远程链接

#更新源
apt-get update
#安装 vim
apt-get install vim
#修改 mongo 配置文件
vim /etc/mongod.conf.orig
bindIp: 127.0.0.1 注释掉或者改成bindIp: 0.0.0.0

Elasticsearch

参考
https://blog.csdn.net/IT_road_qxc/article/details/121858843
https://www.cnblogs.com/lwc1st/p/14060309.html

配置

mkdir -p /home/docker_dir/es/config
cd /home/docker_dir/es/config
vim elasticsearch.yml
http.host: 0.0.0.0
http.cors.enabled: true
http.cors.allow-origin: "*"
http.cors.allow-headers: Authorization
xpack.security.enabled: true
xpack.security.transport.ssl.enabled: true

启用容器

docker run --restart=always --name elasticsearch -p 9200:9200  -p 9300:9300 -e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms1024m -Xmx4096m" -v /home/docker_dir/es/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml -v /home/docker_dir/es/data:/usr/share/elasticsearch/data -v /home/docker_dir/es/plugins:/usr/share/elasticsearch/plugins -d elasticsearch:7.12.0

进入容器设置密码

docker exec -it elasticsearch /bin/bash
cd /bin
elasticsearch-setup-passwords interactive

kibana

配置

mkdir -p /home/docker_dir/kibana
vim kibana.yml
server.name: kibana
server.host: "0.0.0.0"
elasticsearch.hosts: [ "http://IP:9200" ]
monitoring.ui.container.elasticsearch.enabled: true
elasticsearch.username: "elastic"
elasticsearch.password: "password"
i18n.locale: "zh-CN"

启用容器

docker run --restart=always --name kibana -p 5601:5601 --link elasticsearch:elasticsearch -v /home/docker_dir/kibana/kibana.yml:/usr/share/kibana/config/kibana.yml -d kibana:7.12.0
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值