48 lines
1.2 KiB
YAML
48 lines
1.2 KiB
YAML
services:
|
||
postgres:
|
||
image: postgres:16-alpine
|
||
container_name: kefu-cloud-db
|
||
environment:
|
||
POSTGRES_USER: postgres
|
||
POSTGRES_PASSWORD: postgres
|
||
POSTGRES_DB: kefu_cloud
|
||
ports:
|
||
- "5433:5432"
|
||
volumes:
|
||
- pgdata:/var/lib/postgresql/data
|
||
|
||
minio:
|
||
image: minio/minio:latest
|
||
container_name: kefu-cloud-minio
|
||
command: server /data --console-address ":9001"
|
||
environment:
|
||
MINIO_ROOT_USER: minioadmin
|
||
MINIO_ROOT_PASSWORD: minioadmin
|
||
# 避开本机其它 MinIO(如 hfb-minio 占用 9000/9001)
|
||
ports:
|
||
- "9100:9000"
|
||
- "9101:9001"
|
||
volumes:
|
||
- miniodata:/data
|
||
|
||
# 一次性初始化:创建 bucket 并开放公共下载(跑完即退出,Exited 0 属正常)
|
||
# 注意:容器网络内仍访问 minio:9000(服务端口),宿主机映射为 9100
|
||
minio-init:
|
||
image: minio/mc:latest
|
||
container_name: kefu-cloud-minio-init
|
||
depends_on:
|
||
- minio
|
||
restart: "no"
|
||
entrypoint: >
|
||
/bin/sh -c "
|
||
sleep 3;
|
||
mc alias set local http://minio:9000 minioadmin minioadmin;
|
||
mc mb -p local/kefu || true;
|
||
mc anonymous set download local/kefu;
|
||
echo 'MinIO bucket kefu ready';
|
||
"
|
||
|
||
volumes:
|
||
pgdata:
|
||
miniodata:
|