title: Docker学习 | 第二天
date: 2021-05-12 22:17:25
tags:
- [docker]
- [容器]
categories: - [容器, docker]
Docker学习 | 第二天
具名挂载
# 例子
docker run -d -P --name nginx01 -v 卷名:/etc/nginx nginx
Redis集群部署
# 用脚本在宿主机创建目录文件(用于挂载)
for port in $(seq 1 6); \
do \
mkdir -p /mydata/redis/node-${port}/conf
touch /mydata/redis/node-${port}/conf/redis.conf
cat << EOF >/mydata/redis/node-${port}/conf/redis.conf
port 6379
bind 0.0.0.0
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 5000
cluster-announce-ip 172.38.0.1${port}
cluster-announce-port 6379
cluster-announce-bus-port 16379
appendonly yes
EOF
done
for num in $(seq 1 6);\
do\
docker run -p 637${num}:6379 -p 1637${num}:16379 --name redis-${num}\
-v /mydata/redis/node-${num}/data:/data\
-v /mydata/redis/node-${num}/conf/redis.conf:/etc/redis/redis.conf\
-d --net redis --ip 172.38.0.1${num} redis:5.0.9-alpine3.11 redis-server /etc/redis/redis.conf
done
docker exec -it redis-1 /bin/sh
redis-cli --cluster create 172.38.0.11:6379 172.38.0.12:6379 172.38.0.13:6379 172.38.0.14:6379 172.38.0.15:6379 172.38.0.16:6379 --cluster-replicas
1
网络
docker network create 网络名
# docker mysql
docker run -di --name=tensquare_mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root --net tensquare_net mysql
# docker rabbitmq
docker run -di --name=tensquare_rabbitmq -p 5671:5617 -p 5672:5672 -p 4369:4369 -p 15671:15671 -p 15672:15672 -p 25672:25672 --net tensquare_net rabbitmq:management
# docker redis
docker run -di --name=tensquare_redis -p 6379:6379 --net tensquare_net redis