文章

Docker部署各个微服务组件

Docker部署各个微服务组件

一、Sentinel安装命令

docker run --name sentinel -d  -p 8858:8858  -p 8719:8719  bladex/sentinel-dashboard:1.8.0

二、NACOS

docker run --name nacos -d \
-p 8848:8848 \
-p 9848:9848 \
--privileged=true \
--restart=always \
-e JVM_XMS=256m \
-e JVM_XMN=256m \
-e JVM_XMX=256m \
-e MODE=standalone \
-e PREFER_HOST_MODE=hostname \
nacos/nacos-server:2.0.2

单机启动指定 standalone JVM参数指定虚拟机内存大小,防止nacos占用过多内存

三、RabbitMQ

docker run -p 5672:5672 -p 15672:15672 --restart=always --name rabbitmq -d rabbitmq:management

四、Redis


touch /app/redis/conf/redis.conf

docker run -p 6379:6379 --name redis -v /app/redis/data:/data \

-v /app/redis/conf/redis.conf:/etc/redis/redis.conf \

-d redis redis-server /etc/redis/redis.conf

修改conf文件 redis.conf

五、tomcat

docker run --name tomcat-app -p 8080:8080 -v tomcatconf:/usr/local/tomcat/conf -v tomcatwebapp:/usr/local/tomcat/webapps -d tomcat:jdk8-openjdk-slim-buster

六、mysql

docker run -p 3306:3306 --name mysql8 \
-v /app/mysql/conf:/etc/mysql/conf.d \
-v /app/mysql/log:/var/log/mysql \
-v /app/mysql/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=123456 \
--privileged \ 
-d mysql

七、nginx

docker run --name nginx -p 9001:80 -v html:/usr/share/nginx/html:ro -v conf:/etc/nginx -d nginx

八、influxDB

docker run --name=influxdb \
      -p 8086:8086 \
      -v myInfluxVolume:/var/lib/influxdb2 \
      -d influxdb

九、Kafka

安装zookeeper

docker run -d --restart=always -e ALLOW_ANONYMOUS_LOGIN=yes --log-driver json-file --log-opt max-size=100m --log-opt max-file=2  --name zookeeper -p 2181:2181 -v /etc/localtime:/etc/localtime bitnami/zookeeper:3.9

安装kafka

docker run -d  --log-driver json-file --log-opt max-size=100m --log-opt max-file=2 --name kafka -p 9092:9092 -e KAFKA_BROKER_ID=0 -e KAFKA_ZOOKEEPER_CONNECT=192.168.88.161:2181/kafka -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.88.161:9092 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 -v /etc/localtime:/etc/localtime bitnami/kafka:3.4

192.168.88.161需要换成自己主机IP

安装kafka-map

    -p 9001:8080 \
    -v /app/kafka-map/data:/usr/local/kafka-map/data \
    -e DEFAULT_USERNAME=admin \
    -e DEFAULT_PASSWORD=admin \
    --restart always dushixiang/kafka-map:latest



账号密码都是admin

十、elasticsearch

mkdir -p /app/es/data

chmod 777 /app/es/data

mkdir -p /app/es/plugins

docker run --name=elasticsearch -p 9200:9200 -p 9300:9300 \
-e "discovery.type=single-node" \
-e ES_JAVA_OPTS="-Xms300m -Xmx300m" \
-v /app/es/data:/usr/share/elasticsearch/data \
-v /app/es/plugins:/usr/shrae/elasticsearch/plugins \
-v esconfig:/usr/share/elasticsearch/config \
-d elasticsearch:7.12.0

chmod 777 /app/es/data  必须更改权限。

十一、docker可视化

docker run -d -p 8000:8000 -p 9000:9000 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer
License:  CC BY 4.0