Coder Social home page Coder Social logo

sendy-kube's Introduction

Sendy Kube Logo

Sendy Kube

Deploy Sendy on Kubernetes

Issues Twitter

Report Bug - Request Feature

Index

Table of Contents
  1. About The Project
  2. Getting Started
  3. Documentation
  4. Contributing
  5. License
  6. Contact
  7. Support the Project
  8. Acknowledgements

About The Project

Sendy Kube Project Image

Sendy Kube

Deploy Sendy on Kubernetes

Sendy is a self hosted email newsletter application that lets you send trackable emails via Amazon Simple Email Service (SES). This makes it possible for you to send authenticated bulk emails at an insanely low price without sacrificing deliverability.

So what can be better than that? Sendy on Kubernetes!


Built With

Useful extras:

Getting Started

This repo was built together with this guide (follow this as it is more thorough):

Deploying Sendy on Kubernetes

Prerequisites

Get your cluster, if you don't have one you can deploy one on Digital Ocean:

DigitalOcean Referral Badge

Be sure you also get your Sendy license, you can can use my referral code and get some % off here: Sendy

Ensure staging.yourdomainname.com and yourdomainname.com are both individually set to point at your clusters loadbalancer (I am using Traefik, you might be using nginx etc).

I am using Gitlab for my build script (.gitlab-ci.yml). When that file is deployed it will start the deploy process. If you are not using Gitlab or want to deploy manually, you can just copy the commands in the file and run them from the terminal in order of the stages using kubectl.

Installation

Here you can provide the steps required to install your project on the users machine.

  1. Clone the repo
    git clone https://github.com/jotcodeofficial/sendy-kube.git
  2. Edit all the files for your own domains
  3. Deploy files to your own repo (re-enable the .gitinore file)
  4. Edit .gitlab-ci.yml then deploy
    git add *
    git add .gitlab-ci.yml
    git commit -m "deploy time"
    git push -u origin master

Documentation

When your Sendy application is live you can configure the alias manually for your client domains by doing the following: (Ensure your clientdomain A records point to your cluster in your domain server)

  kubectl apply -f production/alias/newsletter-clientdomain-ingress-route.yml
  kubectl apply -f production/alias/newsletter-clientdomain-secure-ingress-route.yml
  kubectl apply -f production/alias/newsletter-clientdomain-issuer.yml
  kubectl apply -f production/alias/newsletter-clientdomain-solver.yml

You can do the same for staging.

Contributing

Great things are a sum of their parts. By contributing your time and effort you can help make this project even better. Collaborative efforts ftw.

License

Released under the MIT License.

Contact

@jotc0de

[email protected]

Support the Project ๐Ÿ’–

If you are not a coder you can still help support the project by sharing it far and wide. Thanks! โค๏ธ

Acknowledgements

I would like to acknowledge the following projects for inspiration:

https://github.com/bubbajames-docker/sendy

https://chris-vermeulen.com/using-gitlab-registry-with-kubernetes/

sendy-kube's People

Contributors

jotcodeofficial avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.