docker-compose.yml 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. version: "3.4"
  2. services:
  3. netmaker:
  4. container_name: netmaker
  5. image: gravitl/netmaker:v0.17.1
  6. cap_add:
  7. - NET_ADMIN
  8. - NET_RAW
  9. - SYS_MODULE
  10. sysctls:
  11. - net.ipv4.ip_forward=1
  12. - net.ipv4.conf.all.src_valid_mark=1
  13. - net.ipv6.conf.all.disable_ipv6=0
  14. - net.ipv6.conf.all.forwarding=1
  15. restart: always
  16. volumes:
  17. - dnsconfig:/root/config/dnsconfig
  18. - sqldata:/root/data
  19. - mosquitto_data:/etc/netmaker
  20. environment:
  21. BROKER_NAME: "broker.NETMAKER_BASE_DOMAIN"
  22. SERVER_NAME: "NETMAKER_BASE_DOMAIN"
  23. SERVER_HOST: "SERVER_PUBLIC_IP"
  24. SERVER_API_CONN_STRING: "api.NETMAKER_BASE_DOMAIN:443"
  25. COREDNS_ADDR: "SERVER_PUBLIC_IP"
  26. DNS_MODE: "on"
  27. SERVER_HTTP_HOST: "api.NETMAKER_BASE_DOMAIN"
  28. API_PORT: "8081"
  29. CLIENT_MODE: "on"
  30. MASTER_KEY: "REPLACE_MASTER_KEY"
  31. CORS_ALLOWED_ORIGIN: "*"
  32. DISPLAY_KEYS: "on"
  33. DATABASE: "sqlite"
  34. NODE_ID: "netmaker-server-1"
  35. MQ_HOST: "mq"
  36. MQ_PORT: "443"
  37. MQ_SERVER_PORT: "1883"
  38. HOST_NETWORK: "off"
  39. VERBOSITY: "1"
  40. MANAGE_IPTABLES: "on"
  41. PORT_FORWARD_SERVICES: "dns"
  42. MQ_ADMIN_PASSWORD: "REPLACE_MQ_ADMIN_PASSWORD"
  43. ports:
  44. - "51821-51830:51821-51830/udp"
  45. netmaker-ui:
  46. container_name: netmaker-ui
  47. image: gravitl/netmaker-ui:v0.17.1
  48. depends_on:
  49. - netmaker
  50. links:
  51. - "netmaker:api"
  52. restart: always
  53. environment:
  54. BACKEND_URL: "https://api.NETMAKER_BASE_DOMAIN"
  55. caddy:
  56. image: caddy:2.6.2
  57. container_name: caddy
  58. restart: unless-stopped
  59. volumes:
  60. - /root/Caddyfile:/etc/caddy/Caddyfile
  61. - caddy_data:/data
  62. - caddy_conf:/config
  63. ports:
  64. - "80:80"
  65. - "443:443"
  66. coredns:
  67. container_name: coredns
  68. image: coredns/coredns
  69. command: -conf /root/dnsconfig/Corefile
  70. depends_on:
  71. - netmaker
  72. restart: always
  73. volumes:
  74. - dnsconfig:/root/dnsconfig
  75. mq:
  76. container_name: mq
  77. image: eclipse-mosquitto:2.0.15-openssl
  78. depends_on:
  79. - netmaker
  80. restart: unless-stopped
  81. command: ["/mosquitto/config/wait.sh"]
  82. environment:
  83. NETMAKER_SERVER_HOST: "https://api.NETMAKER_BASE_DOMAIN"
  84. volumes:
  85. - /root/mosquitto.conf:/mosquitto/config/mosquitto.conf
  86. - /root/wait.sh:/mosquitto/config/wait.sh
  87. - mosquitto_data:/mosquitto/data
  88. - mosquitto_logs:/mosquitto/log
  89. volumes:
  90. caddy_data: {}
  91. caddy_conf: {}
  92. sqldata: {}
  93. dnsconfig: {}
  94. mosquitto_data: {}
  95. mosquitto_logs: {}