1
0

docker-compose.yml 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  1. version: '3.8'
  2. services:
  3. mysql:
  4. build:
  5. context: ./docker/mysql
  6. ports:
  7. - "3306:3306"
  8. volumes:
  9. - mysql_data:/var/lib/mysql
  10. - ./my.cnf:/etc/mysql/conf.d/custom_ai_app.cnf
  11. - ./init.sql:/docker-entrypoint-initdb.d/1-init.sql
  12. - ./init_zabbix_db.sh:/docker-entrypoint-initdb.d/2-init_zabbix.sh
  13. environment:
  14. - MYSQL_ROOT_PASSWORD=root_pass
  15. healthcheck:
  16. test: ["CMD", "mysqladmin", "ping", "-h", "localhost"]
  17. interval: 10s
  18. timeout: 5s
  19. retries: 5
  20. restart: always
  21. ollama:
  22. image: ollama/ollama:latest
  23. ports:
  24. - "11434:11434"
  25. volumes:
  26. - ollama_data:/root/.ollama
  27. deploy:
  28. resources:
  29. reservations:
  30. devices:
  31. - driver: nvidia
  32. count: 1
  33. capabilities: [gpu]
  34. restart: always
  35. app:
  36. build:
  37. context: ./docker/app
  38. ports:
  39. - "8501:8501"
  40. environment:
  41. - DB_HOST=mysql
  42. - DB_USER=db_reader
  43. - DB_PASS=reader_pass
  44. - OLLAMA_HOST=http://ollama:11434
  45. depends_on:
  46. mysql:
  47. condition: service_healthy
  48. restart: always
  49. ingest:
  50. build:
  51. context: ./docker/ingest
  52. environment:
  53. - DB_HOST=mysql
  54. - DB_USER=db_loader
  55. - DB_PASS=loader_pass
  56. depends_on:
  57. mysql:
  58. condition: service_healthy
  59. profiles:
  60. - manual # Only runs when explicitly requested
  61. zabbix-server:
  62. image: zabbix/zabbix-server-mysql:ubuntu-7.0-latest
  63. ports:
  64. - "10051:10051"
  65. environment:
  66. - DB_SERVER_HOST=mysql
  67. - MYSQL_USER=zabbix
  68. - MYSQL_PASSWORD=zabbix_pwd
  69. - ZBX_SNMPTRAPPER=1
  70. depends_on:
  71. mysql:
  72. condition: service_healthy
  73. restart: always
  74. zabbix-web:
  75. image: zabbix/zabbix-web-nginx-mysql:ubuntu-7.0-latest
  76. ports:
  77. - "8080:8080"
  78. - "8443:8443"
  79. environment:
  80. - DB_SERVER_HOST=mysql
  81. - MYSQL_USER=zabbix
  82. - MYSQL_PASSWORD=zabbix_pwd
  83. - ZBX_SERVER_HOST=zabbix-server
  84. - PHP_TZ=Europe/Paris
  85. depends_on:
  86. - zabbix-server
  87. restart: always
  88. zabbix-agent:
  89. image: zabbix/zabbix-agent:ubuntu-7.0-latest
  90. environment:
  91. - ZBX_HOSTNAME=Zabbix server
  92. - ZBX_SERVER_HOST=zabbix-server
  93. privileged: true
  94. pid: "host"
  95. volumes:
  96. - /var/run:/var/run
  97. depends_on:
  98. - zabbix-server
  99. restart: always
  100. volumes:
  101. mysql_data:
  102. ollama_data: