Files
ppanel-script/docker-compose.yml
web@ppanel 24bf101cee Update
2024-12-14 22:03:09 +07:00

81 lines
1.8 KiB
YAML

version: '3.8'
services:
ppanel-server:
image: ppanel/ppanel-server:beta
container_name: ppanel-server-beta
ports:
- '8080:8080'
volumes:
- ./config/ppanel.yaml:/app/etc/ppanel.yaml
restart: always
depends_on:
mysql:
condition: service_healthy
redis:
condition: service_healthy
networks:
- ppanel-network
mysql:
image: mysql:8.0.23
container_name: mysql_db
restart: always
environment:
MYSQL_ROOT_PASSWORD: rootpassword
MYSQL_DATABASE: my_database
MYSQL_USER: user
MYSQL_PASSWORD: userpassword
ports:
- "3306:3306"
volumes:
- ./docker/mysql:/var/lib/mysql
command: --default-authentication-plugin=mysql_native_password --bind-address=0.0.0.0
healthcheck:
test: ["CMD", "mysqladmin", "ping", "-h", "localhost", "-uroot", "-prootpassword"]
interval: 10s
timeout: 5s
retries: 3
networks:
- ppanel-network
redis:
image: redis:7
container_name: redis_cache
restart: always
ports:
- "6379:6379"
volumes:
- ./docker/redis:/data
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 10s
timeout: 5s
retries: 3
networks:
- ppanel-network
ppanel-admin-web:
image: ppanel/ppanel-admin-web:beta
container_name: ppanel-admin-web
restart: always
ports:
- '3000:3000'
environment:
# Replace with actual API endpoint if needed
NEXT_PUBLIC_API_URL: https://api.example.com
ppanel-user-web:
image: ppanel/ppanel-user-web:beta
container_name: ppanel-user-web
restart: always
ports:
- '3001:3000'
environment:
# Replace with actual API endpoint if needed
NEXT_PUBLIC_API_URL: https://api.example.com
networks:
ppanel-network:
driver: bridge