docker-compose.contained.yml 2.4 KB

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