本文是相对简单的部署,如果在使用中有更深入的使用和比较复杂的部署,就会独立出去单独写成一遍文章
部署 Elastic
部署 kibana
Kibana 版本:5.6.10 官方教程
docker pull docker.elastic.co/kibana/kibana:5.6.10
docker-compose.yml
services:
kibana:
image: docker.elastic.co/kibana/kibana:5.6.10
volumes:
- ./kibana.yml:/usr/share/kibana/config/kibana.yml
kibana.yml
server:
host: "0.0.0.0" # 开放远程访问
elasticsearch:
url: http://elasticsearch:9200/ # 通过服务名链接容器中的其他 es 服务
部署 Kibana 6.6.0
docker-compose.yml
kibana6.6.0:
image: docker.elastic.co/kibana/kibana:6.6.0
container_name: kibana_660
volumes:
- ./kibana6.6.0/kibana.yml:/usr/share/kibana/config/kibana.yml
ports:
- 5601:5601
kibana.yml
server:
host: "0.0.0.0" # 开放远程访问
elasticsearch:
hosts: http://elasticsearch_660:9200/ # 通过服务名链接容器中的其他 es 服务
:::tips 为什么这里会多出来不同版本的部署,就是因为配置文件不一样了,希望还是去看官方文档,不然就像我这里第一次部署别的版本,结果 elasticsearch.url 被更改为了 hosts 都不知道 :::
启动后访问:http://localhost:5601/
部署 RabbitMQ 3
docker-compose.yml
services:
rabbitmq:
image: rabbitmq:3-management
container_name: rabbitmq
environment:
- hostname=localhost
volumes:
# 注意数据目录,不能写 /var/lib/rabbitmq/ ,否则启动后会导致 cookie 文件的权限问题启动失败
- ./rabbitmq/data:/var/lib/rabbitmq/mnesia
- ./rabbitmq/log:/var/log/rabbitmq
- ./rabbitmq.conf:/etc/rabbitmq/rabbitmq.conf
ports:
- 15672:15672
- 5672:5672
rabbitmq.conf
# 默认的 guest/guest 用户是否只允许 http://localhost/ 访问
loopback_users.guest = false
listeners.tcp.default = 5672
management.tcp.port = 15672
配置文件官方参考文档:
安装延迟插件
部署 Mysql
部署 MINIO(S3)
docker-compose.yml
version: '3.1'
services:
minio:
image: minio/minio:RELEASE.2021-05-18T00-53-28Z
container_name: minio
environment:
MINIO_ROOT_USER: 用户名
MINIO_ROOT_PASSWORD: 密码
volumes:
- ./minio/data:/data
- ./minio/config:/root/.minio/
ports:
- 9000:9000
networks:
- localnet
command: server ./minio/data
说明:
- 将
/data
数据目录导出来了 - 将
/root/.minio/
配置文件目录导出来了 - command:这个命令是一定需要的,后面跟随的是数据目录路径
部署成功后,就可以访问 http://localhost:9000/minio/ 地址登录 minio 系统了
JAVA SDK 相关使用 请参考该文章
部署 PostgreSQL
postgres:
container_name: postgres
image: postgres:13.3
restart: always
ports:
- 5432:5432
environment:
POSTGRES_USER: root
POSTGRES_PASSWORD: 123456
volumes:
- ./postgres/data:/var/lib/postgresql/data/
- ./postgres/postgresql.conf:/usr/share/postgresql/postgresql.conf
postgresql.conf
# 允许所有地址链接到该数据库
listen_addresses = '*'