netmaker-install-clientmode.sh 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. #!/bin/sh
  2. set -e
  3. [ -z "$SERVER_DOMAIN" ] && echo "Need to set SERVER_DOMAIN (format: 1.2.3.4 or mybackend.com)" && exit 1;
  4. docker volume create mongovol && docker run -d --name mongodb -v mongovol:/data/db --network host -e MONGO_INITDB_ROOT_USERNAME=mongoadmin -e MONGO_INITDB_ROOT_PASSWORD=mongopass mongo --bind_ip 0.0.0.0
  5. mkdir -p /etc/netmaker/config/environments
  6. wget -O /etc/netmaker/netmaker https://github.com/gravitl/netmaker/releases/download/latest/netmaker
  7. chmod +x /etc/netmaker/netmaker
  8. cat >/etc/netmaker/config/environments/dev.yaml<<EOL
  9. server:
  10. host: "$SERVER_DOMAIN"
  11. apiport: "8081"
  12. grpcport: "50051"
  13. masterkey: "secretkey"
  14. allowedorigin: "*"
  15. restbackend: true
  16. agentbackend: true
  17. defaultnetname: "default"
  18. defaultnetrange: "10.10.10.0/24"
  19. createdefault: true
  20. mongoconn:
  21. user: "mongoadmin"
  22. pass: "mongopass"
  23. host: "localhost"
  24. port: "27017"
  25. opts: '/?authSource=admin'
  26. EOL
  27. cat >/etc/netmaker/config/Corefile<<EOL
  28. . {
  29. hosts /root/netmaker.hosts
  30. }
  31. EOL
  32. cat >/etc/systemd/system/netmaker.service<<EOL
  33. [Unit]
  34. Description=Netmaker Server
  35. After=network.target
  36. [Service]
  37. Type=simple
  38. Restart=on-failure
  39. WorkingDirectory=/etc/netmaker
  40. ExecStart=/etc/netmaker/netmaker
  41. [Install]
  42. WantedBy=multi-user.target
  43. EOL
  44. systemctl daemon-reload
  45. systemctl start netmaker.service
  46. docker run -d --name netmaker-ui -p 80:80 -e BACKEND_URL="http://$SERVER_DOMAIN:8081" gravitl/netmaker-ui:v0.2
  47. docker run -d --name coredns --restart=always --volume=/etc/netmaker/config/:/root/ -p 52:53/udp coredns/coredns -conf /root/Corefile