eiru-bootup.sh 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  1. #!/bin/bash
  2. NET_NAME="eiru"
  3. ODOO_IMAGE="odoo/eiru:1.4"
  4. ODOO_PATH="/srv/odoo"
  5. DB_CONTAINER="database"
  6. ODOO_SYSTEMS=golden \
  7. athletic \
  8. topjeans \
  9. kava \
  10. amojeans \
  11. world \
  12. clasi_calse \
  13. tuspasos
  14. start_database_system()
  15. {
  16. # start postgresql
  17. docker start $DB_CONTAINER
  18. # start pgbouncer
  19. docker run \
  20. --name pgbouncer \
  21. --volume /srv/pgbouncer/config:/etc/pgbouncer \
  22. --volume /srv/pgbouncer/log:/var/log/pgbouncer \
  23. --net $NET_NAME \
  24. --ip 172.19.0.3 \
  25. --tty pgbouncer:alpine
  26. }
  27. start_odoo_system()
  28. {
  29. docker run \
  30. --name $1 \
  31. --publish "$2:8069" \
  32. --volume "$ODOO_PATH/$1/conf:/etc/odoo" \
  33. --volume "$ODOO_PATH/$1/custom-addons:/mnt/extra-addons" \
  34. --volume "$ODOO_PATH/$1/files:/var/lib/odoo" \
  35. --link "$DB_CONTAINER:db" \
  36. --net $NET_NAME \
  37. --ip $3 \
  38. --tty $ODOO_IMAGE
  39. }
  40. start_odoo_systems()
  41. {
  42. start_odoo_system golden 10000 "172.19.0.100"
  43. start_odoo_system athletic 10500 "172.19.0.101"
  44. start_odoo_system topjeans 11000 "172.19.0.102"
  45. start_odoo_system kava 11500 "172.19.0.103"
  46. start_odoo_system amojeans 12500 "172.19.0.105"
  47. start_odoo_system world 13000 "172.19.0.106"
  48. start_odoo_system clasi_calse 13500 "172.19.0.107"
  49. start_odoo_system tuspasos 15000 "172.19.0.108"
  50. }
  51. start_monitor_systems()
  52. {
  53. docker start influxdb
  54. docker start telegraf
  55. docker start grafana
  56. docker start portainer
  57. }
  58. mount_backup_drives()
  59. {
  60. mount --type ext4 /dev/sdb /mnt/backup/primary_local_bkp
  61. mount --type ext4 /dev/sdc /mnt/backup/secondary_local_bkp
  62. }
  63. stop_odoo_systems()
  64. {
  65. for ODOO_NAME in $@; do
  66. docker stop $ODOO_NAME
  67. done
  68. }
  69. stop_database_system()
  70. {
  71. docker stop pgbouncer
  72. docker rm pgbouncer -f
  73. docker stop database
  74. }
  75. stop_monitor_systems()
  76. {
  77. docker stop grafana
  78. docker stop telegraf
  79. docker stop influxdb
  80. }
  81. if [ ! -x "$(command -v docker)" ]; then
  82. echo "cannot bootup systems"
  83. exit 1
  84. fi
  85. if [ "$1" = "stop" ]; then
  86. stop_monitor_systems
  87. stop_odoo_systems golden athletic topjeans kava amojeans world clasi_calse tuspasos
  88. stop_database_system
  89. exit 0
  90. fi
  91. start_database_system
  92. start_odoo_systems
  93. start_monitor_systems
  94. mount_backup_drives
  95. exit 0