redis
docker run --restart=always -d --privileged=true -p 6379:6379 -v /docker/redis/conf/redis.conf:/etc/redis/redis.conf -v /docker/redis/data:/data --name redis-single redis:5.0.3 redis-server /etc/redis/redis.conf --appendonly yes
mongodb
docker run --restart=always -d --privileged=true -p 27017:27017 -v /docker/mongodb:/data/db --name mongodb-single mongo:4.0.5
如果需要设置访问权限:
docker run --restart=always -d --privileged=true -p 27017:27017 -v /docker/mongodb:/data/db --name mongodb-single mongo:4.0.5 --auth
添加用户:docker exec -it mongodb-single mongo admin
然后执行:db.createUser({ user: 'wugang', pwd: 'aaabbbccc', roles: [ { role: "userAdminAnyDatabase", db: "admin" } ] });
rabbitmq
docker run --restart=always -d --privileged=true --hostname rabbitmq --name rabbitmq-single -e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=admin -e RABBITMQ_DEFAULT_VHOST=my_vhost -p 15672:15672 -p 5672:5672 rabbitmq:3.7.14-management
RABBITMQ_DEFAULT_USER:用户名
RABBITMQ_DEFAULT_PASS:密码
RABBITMQ_DEFAULT_VHOST:vhost
15672:web管理端端口
5672:客户端访问端口
es
docker run --restart=always -d --name es-single -p 9200:9200 -p 9300:9300 -v /docker/es/data:/usr/share/elasticsearch/data -v /docker/es/plugins:/usr/share/elasticsearch/plugins -v /docker/es/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -e "discovery.type=single-node" elasticsearch:6.8.13
参考:使用docker部署ES和Kibana
如果出现java.nio.file.AccessDeniedException: /usr/share/elasticsearch/data/nodes
,需要给data目录设置权限 chmod 777 /docker/es/data
说明
-p 6379:6379
宿主机端口:容器端口
-v /docker/redis/conf/redis.conf:/etc/redis/redis.conf
宿主机路径:容器路径