diff --git a/.gitignore b/.gitignore index e43b0f9..f780ba0 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,4 @@ -.DS_Store +*.yaml +SECRET +.env +/backup \ No newline at end of file diff --git a/docker-compose.apple-m1.override.yml b/docker-compose.apple-m1.override.yml deleted file mode 100644 index 80344e4..0000000 --- a/docker-compose.apple-m1.override.yml +++ /dev/null @@ -1,36 +0,0 @@ -# This docker-compose file is just here for testing - -version: "3.4" - -services: - - ######################################################## - # WEBAPP ############################################### - ######################################################## - webapp: - platform: linux/amd64 - - ######################################################## - # BACKEND ############################################## - ######################################################## - backend: - platform: linux/amd64 - - ######################################################## - # MAINTENANCE ########################################## - ######################################################## - maintenance: - platform: linux/amd64 - - ######################################################## - # NEO4J ################################################ - ######################################################## - neo4j: - platform: linux/amd64 - - ######################################################## - # MAILSERVER TO FAKE SMTP ############################## - ######################################################## - # commented out, because otherwise override of production would error. and it seems unnecessary - # mailserver: - # platform: linux/amd64 diff --git a/docker-compose.wirsocial.yml b/docker-compose.wirsocial.yml deleted file mode 100644 index 7ff01d9..0000000 --- a/docker-compose.wirsocial.yml +++ /dev/null @@ -1,103 +0,0 @@ -# This docker-compose file is just here for testing -version: "3.4" - -services: - - ######################################################## - # WEBAPP ############################################### - ######################################################## - webapp: - # name the image to match our image to be tested from our DockerHub repository so that it can be pulled from there, otherwise it will be created locally from the 'dockerfile' - image: wirsocial/webapp-branded:latest - ports: - - 3000:3000 - networks: - - test-network - depends_on: - - backend - environment: - - HOST=0.0.0.0 - - GRAPHQL_URI=http://backend:4000 - - MAPBOX_TOKEN="pk.eyJ1IjoiYnVzZmFrdG9yIiwiYSI6ImNraDNiM3JxcDBhaWQydG1uczhpZWtpOW4ifQ.7TNRTO-o9aK1Y6MyW_Nd4g" - # - WEBSOCKETS_URI=ws://backend:4000/graphql # is not working and not given in Docker YAML in main repo - - PUBLIC_REGISTRATION=true - - INVITE_REGISTRATION=true - - CATEGORIES_ACTIVE=true - - ######################################################## - # BACKEND ############################################## - ######################################################## - backend: - # name the image to match our image to be tested from our DockerHub repository so that it can be pulled from there, otherwise it will be created locally from the 'dockerfile' - image: wirsocial/backend-branded:latest - networks: - - test-network - depends_on: - - neo4j - ports: - - 4000:4000 - volumes: - - backend_uploads:/app/public/uploads - environment: - - NEO4J_URI=bolt://neo4j:7687 - - GRAPHQL_URI=http://backend:4000 - - CLIENT_URI=http://localhost:3000 - - JWT_SECRET=b/&&7b78BF&fv/Vd - - MAPBOX_TOKEN=pk.eyJ1IjoiYnVzZmFrdG9yIiwiYSI6ImNraDNiM3JxcDBhaWQydG1uczhpZWtpOW4ifQ.7TNRTO-o9aK1Y6MyW_Nd4g - - PRIVATE_KEY_PASSPHRASE=a7dsf78sadg87ad87sfagsadg78 - - EMAIL_SUPPORT=support@wir.social - - EMAIL_DEFAULT_SENDER=info@wir.social - # - PRODUCTION_DB_CLEAN_ALLOW=false # only true for production environments on staging servers - - PUBLIC_REGISTRATION=true - - INVITE_REGISTRATION=true - - CATEGORIES_ACTIVE=true - - SMTP_USERNAME=${SMTP_USERNAME} - - SMTP_PASSWORD=${SMTP_PASSWORD} - - SMTP_HOST=mailserver - - SMTP_PORT=25 - - SMTP_IGNORE_TLS=true - - ######################################################## - # MAINTENANCE ########################################## - ######################################################## - maintenance: - # name the image to match our image to be tested from our DockerHub repository so that it can be pulled from there, otherwise it will be created locally from the 'dockerfile' - image: wirsocial/maintenance-branded:latest - networks: - - test-network - ports: - - 3001:80 - - ######################################################## - # NEO4J ################################################ - ######################################################## - neo4j: - # name the image to match our image to be tested from our DockerHub repository so that it can be pulled from there, otherwise it will be created locally from the 'dockerfile' - image: wirsocial/neo4j-community-branded:latest - networks: - - test-network - environment: - - NEO4J_AUTH=none - - NEO4J_dbms_security_procedures_unrestricted=algo.*,apoc.* - - NEO4J_ACCEPT_LICENSE_AGREEMENT=yes - ports: - - 7687:7687 - volumes: - - neo4j_data:/data - - ######################################################## - # MAILSERVER TO FAKE SMTP ############################## - ######################################################## - mailserver: - image: djfarrelly/maildev - ports: - - 1080:80 - networks: - - test-network - -networks: - test-network: - -volumes: - backend_uploads: - neo4j_data: diff --git a/docker-compose.yml b/docker-compose.yml deleted file mode 100644 index 535d485..0000000 --- a/docker-compose.yml +++ /dev/null @@ -1,117 +0,0 @@ -# This docker-compose file is just here for testing - -version: "3.4" - -services: - - ######################################################## - # WEBAPP ############################################### - ######################################################## - webapp: - # name the image so that it cannot be found in a DockerHub repository, otherwise it will not be built locally from the 'dockerfile' but pulled from there - image: ocelotsocialnetwork/webapp-branded:local-production - build: - dockerfile: docker/webapp.Dockerfile - target: branded - context: . - ports: - - 3000:3000 - networks: - - test-network - depends_on: - - backend - environment: - - HOST=0.0.0.0 - - GRAPHQL_URI=http://backend:4000 - - MAPBOX_TOKEN="pk.eyJ1IjoiYnVzZmFrdG9yIiwiYSI6ImNraDNiM3JxcDBhaWQydG1uczhpZWtpOW4ifQ.7TNRTO-o9aK1Y6MyW_Nd4g" - # - WEBSOCKETS_URI=ws://backend:4000/graphql # is not working and not given in Docker YAML in main repo - - PUBLIC_REGISTRATION=true - - INVITE_REGISTRATION=true - - CATEGORIES_ACTIVE=true - - ######################################################## - # BACKEND ############################################## - ######################################################## - backend: - # name the image so that it cannot be found in a DockerHub repository, otherwise it will not be built locally from the 'dockerfile' but pulled from there - image: ocelotsocialnetwork/backend-branded:local-production - build: - dockerfile: docker/backend.Dockerfile - target: branded - context: . - networks: - - test-network - depends_on: - - neo4j - ports: - - 4000:4000 - volumes: - - backend_uploads:/app/public/uploads - environment: - - NEO4J_URI=bolt://neo4j:7687 - - GRAPHQL_URI=http://backend:4000 - - CLIENT_URI=http://localhost:3000 - - JWT_SECRET=b/&&7b78BF&fv/Vd - - MAPBOX_TOKEN=pk.eyJ1IjoiYnVzZmFrdG9yIiwiYSI6ImNraDNiM3JxcDBhaWQydG1uczhpZWtpOW4ifQ.7TNRTO-o9aK1Y6MyW_Nd4g - - PRIVATE_KEY_PASSPHRASE=a7dsf78sadg87ad87sfagsadg78 - - EMAIL_SUPPORT=support@wir.social - - EMAIL_DEFAULT_SENDER=info@wir.social - # - PRODUCTION_DB_CLEAN_ALLOW=false # only true for production environments on staging servers - - PUBLIC_REGISTRATION=true - - INVITE_REGISTRATION=true - - CATEGORIES_ACTIVE=true - - SMTP_USERNAME=${SMTP_USERNAME} - - SMTP_PASSWORD=${SMTP_PASSWORD} - - SMTP_HOST=mailserver - - SMTP_PORT=25 - - SMTP_IGNORE_TLS=true - - ######################################################## - # MAINTENANCE ########################################## - ######################################################## - maintenance: - # name the image so that it cannot be found in a DockerHub repository, otherwise it will not be built locally from the 'dockerfile' but pulled from there - image: ocelotsocialnetwork/maintenance-branded:local-production - build: - # TODO: Separate from webapp, this must be independent - dockerfile: docker/maintenance.Dockerfile - target: branded - context: . - networks: - - test-network - ports: - - 3001:80 - - ######################################################## - # NEO4J ################################################ - ######################################################## - neo4j: - # name the image so that it cannot be found in a DockerHub repository, otherwise it will not be built locally from the 'dockerfile' but pulled from there - image: ocelotsocialnetwork/neo4j-community-branded:local-production - networks: - - test-network - volumes: - - neo4j_data:/data - environment: - - NEO4J_AUTH=none - - NEO4J_dbms_security_procedures_unrestricted=algo.*,apoc.* - - NEO4J_ACCEPT_LICENSE_AGREEMENT=yes - ports: - - 7687:7687 - - ######################################################## - # MAILSERVER TO FAKE SMTP ############################## - ######################################################## - mailserver: - image: djfarrelly/maildev - ports: - - 1080:80 - networks: - - test-network - -networks: - test-network: - -volumes: - backend_uploads: - neo4j_data: diff --git a/kubernetes/dns.values.yaml.template b/kubernetes/dns.values.yaml.template new file mode 100644 index 0000000..09539e3 --- /dev/null +++ b/kubernetes/dns.values.yaml.template @@ -0,0 +1,12 @@ +# please duplicate template file and rename to "dns.values.yaml" and fill in your value + +provider: digitalocean +digitalocean: + # create the API token at https://cloud.digitalocean.com/account/api/tokens + # needs read + write + apiToken: "TODO" +domainFilters: + # domains you want external-dns to be able to edit + - TODO.TODO +rbac: + create: true \ No newline at end of file diff --git a/kubernetes/values.yaml.template b/kubernetes/values.yaml.template new file mode 100644 index 0000000..4171b2f --- /dev/null +++ b/kubernetes/values.yaml.template @@ -0,0 +1,124 @@ +# please duplicate template file and rename to "values.yaml" and fill in your value + +# change all the below if needed +MAPBOX_TOKEN: "pk.eyJ1IjoiYnVzZmFrdG9yIiwiYSI6ImNraDNiM3JxcDBhaWQydG1uczhpZWtpOW4ifQ.7TNRTO-o9aK1Y6MyW_Nd4g" +PRODUCTION_DB_CLEAN_ALLOW: false # only true for production environments on staging servers +PUBLIC_REGISTRATION: false +INVITE_REGISTRATION: false +COOKIE_EXPIRE_TIME: 730 # days (730 days, two years is the default in main code) +CATEGORIES_ACTIVE: false + +BACKEND: + # change all the below if needed + # DOCKER_IMAGE_REPO - change that to your branded docker image + # label is appended based on .Chart.appVersion + DOCKER_IMAGE_REPO: "ocelotsocialnetwork/backend-branded" + CLIENT_URI: "https://staging.ocelot.social" + # create a new one for your network + JWT_SECRET: "b/&&7b78BF&fv/Vd" + PRIVATE_KEY_PASSPHRASE: "a7dsf78sadg87ad87sfagsadg78" + # ocelot.social mail dummy + EMAIL_DEFAULT_SENDER: "devops@ocelot.social" + SMTP_HOST: "mail.ocelot.social" + SMTP_USERNAME: "devops@ocelot.social" + SMTP_PASSWORD: "devops@ocelot.social" + SMTP_PORT: "587" + SMTP_IGNORE_TLS: 'false' + SMTP_SECURE: 'false' # true for 465, false for other ports + # or + # SMTP_PORT: "465" + # SMTP_IGNORE_TLS: 'true' + # SMTP_SECURE: 'true' # true for 465, false for other ports + + # most likely you don't need to change this + MIN_READY_SECONDS: "15" + PROGRESS_DEADLINE_SECONDS: "60" + REVISIONS_HISTORY_LIMIT: "25" + CONTAINER_RESTART_POLICY: "Always" + CONTAINER_TERMINATION_GRACE_PERIOD_SECONDS: "30" + DOCKER_IMAGE_PULL_POLICY: "Always" + STORAGE_UPLOADS: "25Gi" + RESOURCE_REQUESTS_MEMORY: "1G" + RESOURCE_LIMITS_MEMORY: "2G" + +WEBAPP: + # change all the below if needed + # DOCKER_IMAGE_REPO - change that to your branded docker image + # label is appended based on .Chart.appVersion + DOCKER_IMAGE_REPO: "ocelotsocialnetwork/webapp-branded" + WEBSOCKETS_URI: "wss://staging.ocelot.social/api/graphql" + + # Most likely you don't need to change this + REPLICAS: "2" + MIN_READY_SECONDS: "15" + PROGRESS_DEADLINE_SECONDS: "60" + REVISIONS_HISTORY_LIMIT: "25" + CONTAINER_RESTART_POLICY: "Always" + CONTAINER_TERMINATION_GRACE_PERIOD_SECONDS: "30" + DOCKER_IMAGE_PULL_POLICY: "Always" + RESOURCE_REQUESTS_MEMORY: "1G" + RESOURCE_LIMITS_MEMORY: "2G" + +NEO4J: + # most likely you don't need to change this + REVISIONS_HISTORY_LIMIT: "25" + DOCKER_IMAGE_REPO: "ocelotsocialnetwork/neo4j-community-branded" + DOCKER_IMAGE_PULL_POLICY: "Always" + CONTAINER_RESTART_POLICY: "Always" + CONTAINER_TERMINATION_GRACE_PERIOD_SECONDS: "30" + STORAGE: "5Gi" + RESOURCE_REQUESTS_MEMORY: "2G" + RESOURCE_LIMITS_MEMORY: "4G" + # required for Neo4j Enterprice version + #ACCEPT_LICENSE_AGREEMENT: "yes" + ACCEPT_LICENSE_AGREEMENT: "no" + AUTH: "none" + #DBMS_CONNECTOR_BOLT_THREAD_POOL_MAX_SIZE: "10000" # hc value + DBMS_CONNECTOR_BOLT_THREAD_POOL_MAX_SIZE: "400" # default value + #DBMS_MEMORY_HEAP_INITIAL_SIZE: "500MB" # HC value + DBMS_MEMORY_HEAP_INITIAL_SIZE: "" # default + #DBMS_MEMORY_HEAP_MAX_SIZE: "500MB" # HC value + DBMS_MEMORY_HEAP_MAX_SIZE: "" # default + #DBMS_MEMORY_PAGECACHE_SIZE: "490M" # HC value + DBMS_MEMORY_PAGECACHE_SIZE: "" # default + #APOC_IMPORT_FILE_ENABLED: "true" # HC value + APOC_IMPORT_FILE_ENABLED: "false" # default + DBMS_SECURITY_PROCEDURES_UNRESTRICTED: "algo.*,apoc.*" + +MAINTENANCE: + # change all the below if needed + # DOCKER_IMAGE_REPO - change that to your branded docker image + # label is appended based on .Chart.appVersion + DOCKER_IMAGE_REPO: "ocelotsocialnetwork/maintenance-branded" + + # Most likely you don't need to change this + REVISIONS_HISTORY_LIMIT: "25" + CONTAINER_RESTART_POLICY: "Always" + CONTAINER_TERMINATION_GRACE_PERIOD_SECONDS: "30" + DOCKER_IMAGE_PULL_POLICY: "Always" + RESOURCE_REQUESTS_MEMORY: "500M" + RESOURCE_LIMITS_MEMORY: "1G" + +LETSENCRYPT: + # change all the below if needed + # ISSUER is used by cert-manager to set up certificates with the given provider. + # change it to "letsencrypt-production" once you are ready to have valid cetrificates. + # Be aware that the is an issuing limit with letsencrypt, so a dry run with staging might be wise + ISSUER: "letsencrypt-staging" + EMAIL: "devops@ocelot.social" + DOMAINS: + - "staging.ocelot.social" + - "www.staging.ocelot.social" + +NGINX: + # most likely you don't need to change this + PROXY_BODY_SIZE: "10m" + +STORAGE: + # change all the below if needed + PROVISIONER: "dobs.csi.digitalocean.com" + + # most likely you don't need to change this + RECLAIM_POLICY: "Retain" + VOLUME_BINDING_MODE: "Immediate" + ALLOW_VOLUME_EXPANSION: true \ No newline at end of file diff --git a/package.json b/package.json deleted file mode 100644 index de49bb8..0000000 --- a/package.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "name": "wir.social", - "version": "1.1.1", - "ocelotDockerVersionTag": "1.1.1-228", - "dockerOrganisation": "wirsocial", - "description": "wir.social Network driven by ocelot.social", - "author": "ocelot.social Community", - "license": "MIT", - "private": false, - "repository": { - "type": "git", - "url": "https://github.com/wir-social/wir-social.git" - } -}