部署Redis集群
#创建网卡
docker network create redis --subnet 172.38.0.0/16
#创建6个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
eppendonly yes
EOF
done
#启动6个Redis
docker run -p 637${port}:6379 -p 1637${port}:16379 --name redis-${port} \
-v /mydata/redis/node-${port}/data:/data \
-v /mydata/redis/node-${port}/conf/redis.conf:/etc/redis/redis.conf \
-d --net redis --ip 172.17.0.1${port} redis:5.0.9-alpine3.11 redis-server /etc/redis/redis.conf \
#查看
docker ps
#进入Redis容器
docker -it redis-1 /bin/sh
#创建集群
redis-cli --cluster create 172.17.0.11:6379 172.17.0.12:6379 172.17.0.11:6379 172.17.0.13:6379 172.17.0.14:6379 172.17.0.15:6379 --cluster-replicas l
#进入客户端
redis-cli -c
#查看集群信息
127.0.0.1:6379> cluster nodes
springboot 打包docker
编写Dockerfile
FROM java:8
COPY *.jar /app.jar
CMD ["--server.port=8080"]
EXPOSE 8080
ENTRYPOINT ["java","-jar","/app.jar"]
创建镜像
[root@localhost idea]# docker build -t wyh666 .
#运行镜像
docker run -d -P --name wyh-web wyh666
[root@localhost idea]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2921ae2541cf wyh666 "java -jar /app.jar …" 32 seconds ago Up 31 seconds 0.0.0.0:49160->8080/tcp wyh-web
#测试
[root@localhost idea]# curl localhost:49160/test
nihao