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