项目作者: rongfengliang

项目描述 :
pg-s3-backup
高级语言: Shell
项目地址: git://github.com/rongfengliang/pg-s3-backup.git
创建时间: 2019-03-18T10:22:08Z
项目社区:https://github.com/rongfengliang/pg-s3-backup

开源协议:

下载


pg backup with s3 (minio demo)

fork from https://github.com/Remigius2011/pg-dump && do some change

how to running

  • start pg && minio server
  1. docker-compose up -d postgres s3
  • add some table && datas
  1. the way you like
  • test pg backup
  1. docker-compose up backup

with k8s cronjob

you can use k8s cronjob for scheduler auto

  • cronjob yaml content
  1. {
  2. "kind": "CronJob",
  3. "apiVersion": "batch/v1beta1",
  4. "metadata": {
  5. "name": "gitlab-backup-job"
  6. },
  7. "spec": {
  8. "schedule": "0 0 1 * *",
  9. "concurrencyPolicy": "Replace",
  10. "suspend": false,
  11. "jobTemplate": {
  12. "metadata": {
  13. "creationTimestamp": null
  14. },
  15. "spec": {
  16. "template": {
  17. "metadata": {
  18. "creationTimestamp": null,
  19. "labels": {
  20. "apprepositories.kubeapps.com/repo-name": "gitlab-backup-job"
  21. }
  22. },
  23. "spec": {
  24. "containers": [
  25. {
  26. "name": "gitlab-pg-backup",
  27. "image": "dalongrong/pg-dump-gzip",
  28. "env": [
  29. {
  30. "name": "PG_DB",
  31. "value": "postgres"
  32. },
  33. {
  34. "name": "PG_HOST",
  35. "value": "postgres"
  36. },
  37. {
  38. "name": "PG_PASSWORD",
  39. "value": "dalong"
  40. },
  41. {
  42. "name": "PG_PORT",
  43. "value": "5432"
  44. },
  45. {
  46. "name": "S3_ACCESS_KEY",
  47. "value": "dalongdemo"
  48. },
  49. {
  50. "name": "S3_HOST",
  51. "value": "s3:9000"
  52. },
  53. {
  54. "name": "S3_PROTOCOL",
  55. "value": "http"
  56. },
  57. {
  58. "name": "S3_SECRET_KEY",
  59. "value": "dalongdemo"
  60. }
  61. ],
  62. "imagePullPolicy": "IfNotPresent"
  63. }
  64. ],
  65. "restartPolicy": "OnFailure"
  66. }
  67. }
  68. }
  69. },
  70. "successfulJobsHistoryLimit": 3,
  71. "failedJobsHistoryLimit": 1
  72. }
  73. }