{"id":15444861,"url":"https://github.com/goern/mattermost-openshift","last_synced_at":"2025-10-11T12:31:12.676Z","repository":{"id":142163093,"uuid":"55587509","full_name":"goern/mattermost-openshift","owner":"goern","description":"An OpenShift 3 application template for mattermost","archived":true,"fork":false,"pushed_at":"2018-09-12T15:59:57.000Z","size":91,"stargazers_count":26,"open_issues_count":0,"forks_count":26,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-01-28T21:38:40.175Z","etag":null,"topics":["mattermost","mattermost-application","openshift","slack"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/goern.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-04-06T08:10:00.000Z","updated_at":"2023-07-27T12:01:18.000Z","dependencies_parsed_at":null,"dependency_job_id":"933556eb-a289-41c3-b800-6bd2966995eb","html_url":"https://github.com/goern/mattermost-openshift","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/goern/mattermost-openshift","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/goern%2Fmattermost-openshift","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/goern%2Fmattermost-openshift/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/goern%2Fmattermost-openshift/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/goern%2Fmattermost-openshift/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/goern","download_url":"https://codeload.github.com/goern/mattermost-openshift/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/goern%2Fmattermost-openshift/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279007167,"owners_count":26084247,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-11T02:00:06.511Z","response_time":55,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["mattermost","mattermost-application","openshift","slack"],"created_at":"2024-10-01T19:42:50.211Z","updated_at":"2025-10-11T12:31:12.671Z","avatar_url":"https://github.com/goern.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Mattermost for OpenShift Origin 3\n\nThis is instant Mattermost application for OpenShift Origin 3.\n\nThe license applies to all files inside this repository, not Mattermost itself.\n\n## TL;DR\n```\noc new-project mattermost\noc new-app postgresql-persistent -p POSTGRESQL_USER=mmuser -p POSTGRESQL_PASSWORD=mostest \\\n                                 -p POSTGRESQL_DATABASE=mattermost -p MEMORY_LIMIT=128Mi\noc create --filename mattermost.yaml\noc create serviceaccount mattermost\noc create secret generic mattermost-database --from-literal=user=mmuser --from-literal=password=mostest\noc secrets link mattermost mattermost-database\n\noc new-app --template=mattermost --labels=app=mattermost\noc expose service/mattermost --labels=app=mattermost\n\n```\n\n### Warning: Security\nMattermost images has hardocoded 1001 user to run with. This is bad practice when running containers in OpenShift which prefers restricted SCC which uses a random uid greater than 1000000.\nTo workaround it, we can put the mattermost service account in anyuid scc and adjust the uid range for the namespace to run with.\n\n```\noc adm policy add-scc-to-user anyuid system:serviceaccount:mattermost:mattermost\noc annotate namespace mattermost openshift.io/sa.scc.uid-range=1001/1001 --overwrite\n```\n\n\n## Prerequisites\n\nOpenShift Origin 3 up and running, including the capability to create a new project. The simple way is to use `oc cluster up` or [Minishift](https://docs.okd.io/latest/minishift/getting-started/installing.html)\n\nAnd you need to deploy PostgreSQL, described below.\n\n## Disclaimer\n\nThis template and Mattermost startup script `mattermost-launch.sh` only supports PostgreSQL.\n\nSupport for this work is provided as 'best can do' via GitHub.\n\n## Installation\n\n### Configuration\n\nFirst of all, let's create a project for mattermost: `oc new-project mattermost`\n\nWe will use a [ServiceAccount](https://docs.okd.io/3.10/dev_guide/service_accounts.html) to run Mattermost, this account will have access to the database [Secrets](https://docs.okd.io/3.10/dev_guide/secrets.html):\n\n```\noc create --filename mattermost.yaml # to import the template\noc create serviceaccount mattermost # our deployment will use this\noc create secret generic mattermost-database --from-literal=user=mmuser --from-literal=password=mostest\noc secrets link mattermost mattermost-database # make the secret available to the serviceaccount\n```\n\n### Deployment\n\nAs Mattermost depends on it, let's deploy PostgreSQL... \n\nNext step, import the current image from quay.io and tag it as latest:\n\n```\noc import-image registry.centos.org/mattermost/mattermost-team:5.2-PCP --confirm\noc tag mattermost-team:5.2-PCP mattermost-team:latest\n```\n\nIf you build your own image dont forget to push it to OpenShift's ImageStreamTag `mattermost/mattermost-team:latest`.\n\nMain step: deploy Mattermost app using the provided template: `oc new-app --template=mattermost --labels=app=mattermost`. Deployments and Services will be created for you.\n\nAnd a route:\n\n`oc expose service/mattermost --labels=app=mattermost --hostname=mattermost.example.com`\n\n## Usage\n\nPoint your browser at `mattermost.example.com`, the first user you create will\nbe an Administrator of Mattermost.\n\n## Updates\n\nIf a new Mattermost container image is available, or if you build one yourself, you need to import it to the ImageStream and retag latest to it. This will automatically deploy the new version.\n\n## Building\n\nThe actual mattermost-team container image used is build by the CentOS Container Index, have a look at: https://registry.centos.org/mattermost/mattermost-team\n\n## Copyright\n\nCopyright (C) 2016-2018 Red Hat Inc.\n\nThis program is free software: you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation, either version 3 of the License, or\n(at your option) any later version.\n\nThis program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\nGNU General Public License for more details.\n\nYou should have received a copy of the GNU General Public License\nalong with this program. If not, see \u003chttp://www.gnu.org/licenses/\u003e.\n\nThe GNU General Public License is provided within the file LICENSE.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgoern%2Fmattermost-openshift","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgoern%2Fmattermost-openshift","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgoern%2Fmattermost-openshift/lists"}