Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/appuio/mastodon-openshift
Mastodon image compatible with OpenShift and APPUiO Cloud
https://github.com/appuio/mastodon-openshift
appuio appuio-cloud image mastodon openshift vshn-project-ignore
Last synced: 4 days ago
JSON representation
Mastodon image compatible with OpenShift and APPUiO Cloud
- Host: GitHub
- URL: https://github.com/appuio/mastodon-openshift
- Owner: appuio
- Created: 2022-11-17T16:19:07.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-02-23T15:10:49.000Z (11 months ago)
- Last Synced: 2024-04-13T21:01:43.169Z (9 months ago)
- Topics: appuio, appuio-cloud, image, mastodon, openshift, vshn-project-ignore
- Language: Dockerfile
- Homepage:
- Size: 10.7 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Mastodon Image for OpenShift
This repository contains a `Dockerfile` which modifies the [upstream](https://hub.docker.com/r/tootsuite/mastodon) image to be compatible with OpenShift.
As usual, it's a file permission thingy.Read more [here](https://docs.openshift.com/container-platform/4.11/openshift_images/create-images.html#images-create-guide-openshift_create-images) about why this is needed on OpenShift.
Get the image on [ghcr.io](https://github.com/appuio/mastodon-openshift/pkgs/container/mastodon-openshift%2Fmastodon).
## Image Maintenance
The image is automatically rebuilt once a new upstream Mastodon image gets available.
Thanks to `renovate.json` and the GitHub Action pipeline.## Helm Values
Here is an example for the [upstream Chart](https://github.com/mastodon/mastodon/tree/main/chart) which works on OpenShift.
It's neither optimized nor perfect, but it works:```yaml
replicaCount: 1image:
repository: ghcr.io/appuio/mastodon-openshift/mastodon
tag: v4.0.2
pullPolicy: IfNotPresentmastodon:
createAdmin:
enabled: true
username: theadmin
email: [email protected]
local_domain: mastodon.local
persistence:
assets:
accessMode: ReadWriteMany
storageClassName: cephfs-fspool-cluster
resources:
requests:
storage: 10Gi
system:
accessMode: ReadWriteMany
storageClassName: cephfs-fspool-cluster
resources:
requests:
storage: 10Gi
secrets:
secret_key_base: CHANGEME
otp_secret: CHANGEME
vapid:
private_key: CHANGEME
public_key: CHANGEME
smtp:
auth_method: plain
delivery_method: smtp
domain: mastodon.local
enable_starttls: 'auto'
from_address: [email protected]
openssl_verify_mode: peer
port: 587
reply_to: [email protected]
server: CHANGEME
tls: false
login: CHANGEME
password: CHANGEMEingress:
enabled: true
annotations:
cert-manager.io/cluster-issuer: letsencrypt-production
hosts:
- host: mastodon.local
paths:
- path: '/'
tls:
- secretName: ingress-tls
hosts:
- mastodon.localpodSecurityContext: null
securityContext: null## Services
elasticsearch:
enabled: falsepostgresql:
enabled: true
auth:
database: mastodon_production
username: mastodon
password: CHANGEME
primary:
podSecurityContext:
enabled: false
containerSecurityContext:
enabled: falseredis:
password: CHANGEME
architecture: standalone
master:
persistence:
size: "1Gi"
podSecurityContext:
enabled: false
containerSecurityContext:
enabled: false
```