Initial Commit

This commit is contained in:
2022-09-09 16:37:09 -07:00
commit dddb37e979
21 changed files with 826 additions and 0 deletions

5
minio/README.md Normal file
View File

@@ -0,0 +1,5 @@
# Minio
This is a nomad file for [Minio](https://min.io/), which is an object storage service with an Amazon S3-compatible API. This nomad file exposes both the console and the API of minio. If you would like to not expose the API, remove the `service` stanza with the name `minio-api`.
In the `env` stanza, there is a username and password set to "CHANGE ME". Set these to the username/password you want to login with.

75
minio/minio.nomad Normal file
View File

@@ -0,0 +1,75 @@
job "minio" {
datacenters = ["dc1"]
group "minio" {
network {
port "minio" {}
port "minio-api" {}
}
volume "minio-data" {
type = "host"
source = "minio-data"
read_only = false
}
task "minio" {
driver = "docker"
volume_mount {
volume = "minio-data"
destination = "/data"
read_only = false
}
config {
image = "minio/minio"
ports = ["minio", "minio-api"]
args = [
"server",
"/data",
"--address", "0.0.0.0:${NOMAD_PORT_minio_api}",
"--console-address", "0.0.0.0:${NOMAD_PORT_minio}"
]
}
env {
MINIO_ROOT_USER = "CHANGE ME"
MINIO_ROOT_PASSWORD = "CHANGE ME"
}
service {
name = "minio"
tags = [
"traefik.enable=true",
"traefik.http.routers.minio.rule=Host(`minio.arsenm.dev`)",
"traefik.http.routers.minio.tls.certResolver=letsencrypt"
]
port = "minio"
check {
type = "http"
path = "/minio/login"
port = "minio"
interval = "10s"
timeout = "2s"
}
}
service {
name = "minio-api"
port = "minio-api"
tags = [
"traefik.enable=true",
"traefik.http.routers.minio-api.rule=Host(`api.minio.arsenm.dev`)",
"traefik.http.routers.minio-api.tls.certResolver=letsencrypt"
]
}
}
}
}