Switch to mongorocks

This commit is contained in:
Nemo 2017-12-03 20:22:14 +05:30
parent 7ac60aa62a
commit 681cdc3214
9 changed files with 258 additions and 37 deletions

158
docker/conf/headphones.ini Normal file
View File

@ -0,0 +1,158 @@
[General]
nzb_downloader = 0
cue_split = 1
libraryscan = 1
music_encoder = 0
open_magnet_links = 0
preferred_quality = 0
customport = 5000
download_scan_interval = 5
preferred_bitrate = 320
destination_dir = /music
encodervbrcbr = cbr
xldprofile = ""
delete_lossless_files = 1
encoderquality = 2
autowant_all = 0
ignored_words = "WMA,FLAC"
freeze_db = 0
encoder_multicore_count = 0
keep_torrent_files = 0
http_root = /
download_dir = ""
http_proxy = 1
launch_browser = 0
http_username = ""
lossless_destination_dir = ""
mb_ignore_age = 365
file_underscores = 0
cue_split_flac_path = ""
lossless_bitrate_from = 0
do_not_override_git_branch = 0
include_extras = 0
samplingfrequency = 44100
http_host = 0.0.0.0
album_art_format = cover
encoder_path = ""
hpuser = ""
detect_bitrate = 0
enable_https = 0
check_github = 1
custompass = ""
mirror = musicbrainz.org
api_enabled = 0
correct_metadata = 1
customuser = ""
cue_split_shntool_path = /usr/bin/shntool
lastfm_username = captn3m0
autowant_upcoming = 1
config_version = 5
check_github_interval = 360
customauth = 0
file_permissions = 0644
prefer_torrents = 1
encoderoutputformat = mp3
search_interval = 1440
preferred_bitrate_low_buffer = 0
ignore_clean_releases = 0
http_password = ""
usenet_retention = 1500
add_album_art = 1
headphones_indexer = 0
wait_until_release_date = 0
rename_files = 0
file_format = $Track $Artist - $Album [$Year] - $Title
customhost = localhost
interface = default
folder_format = $Artist/$Album [$Year]
move_files = 1
cleanup_files = 1
replace_existing_folders = 0
preferred_bitrate_allow_lossless = 0
embed_album_art = 1
check_github_on_startup = 1
http_port = 8181
download_torrent_dir = /downloads
folder_permissions = 0755
official_releases_only = 0
magnet_links = 0
log_dir = /config/logs
update_db_interval = 24
git_path = ""
required_words = ""
advancedencoder = ""
numberofseeders = 5
torrentblackhole_dir = ""
cache_dir = /config/cache
blackhole = 0
libraryscan_interval = 300
keep_nfo = 0
preferred_bitrate_high_buffer = 0
https_cert = /config/server.crt
hppass = ""
customsleep = 1
api_key = ""
encoderlossless = 1
torrent_downloader = 1
torrent_removal_interval = 720
blackhole_dir = ""
keep_original_folder = 1
extras = ""
autowant_manually_added = 1
encoder_multicore = 0
encoderfolder = ""
preferred_words = ""
https_key = /config/server.key
encoder = ffmpeg
git_user = rembo10
bitrate = 192
music_dir = /music
auto_add_artists = 1
git_branch = master
embed_lyrics = 0
lossless_bitrate_to = 0
keep_torrent_files_dir = ""
file_permissions_enabled = 1
album_art_max_width = 512
album_art_min_width = 512
soft_chroot = ""
rename_unprocessed = 1
rename_frozen = 1
folder_permissions_enabled = 1
do_not_process_unmatched = 0
[Subsonic]
subsonic_host = ""
subsonic_password = ""
subsonic_enabled = 0
subsonic_username = ""
[Email]
email_onsnatch = 0
email_smtp_password = ""
email_tls = 0
email_smtp_port = 25
email_smtp_server = ""
email_enabled = 0
email_smtp_user = ""
email_ssl = 0
email_to = ""
email_from = ""
[Advanced]
verify_ssl_cert = 1
ignored_files = ,
journal_mode = wal
album_completion_pct = 80
ignored_folders = ,
cache_sizemb = 32
[Piratebay]
piratebay_ratio = 0.1
piratebay = 1
piratebay_proxy_url = https://duckingproxy.eu/
[MPC]
mpc_enabled = 0
[XBMC]
xbmc_username = ""
xbmc_host = http://192.168.1.111:8080
xbmc_enabled = 1
xbmc_update = 1
xbmc_password = ""
xbmc_notify = 1

View File

@ -63,7 +63,7 @@ auth:
local:
enabled: true
google:
enabled: true
enabled: false
clientId: GOOGLE_CLIENT_ID
clientSecret: GOOGLE_CLIENT_SECRET
@ -72,40 +72,40 @@ auth:
# ---------------------------------------------------------------------
# Use a long and unique random string (256-bit keys are perfect!)
sessionSecret: 83941e2642ff1feafa410f35497c4ac6bc28d3226ca438225319ae1c9e670cdb
sessionSecret: $(SESSION_SECRET)
# ---------------------------------------------------------------------
# Database Connection String
# ---------------------------------------------------------------------
db: mongodb://192.168.1.111:27017/wiki
db: mongodb://mongorocks:27017/wiki
# ---------------------------------------------------------------------
# Git Connection Info
# ---------------------------------------------------------------------
git:
url: https://github.com/Organization/Repo
branch: master
auth:
# git:
# url: https://github.com/Organization/Repo
# branch: master
# auth:
# Type: basic or ssh
type: ssh
# # Type: basic or ssh
# type: ssh
# Only for Basic authentication:
username: marty
password: MartyMcFly88
# # Only for Basic authentication:
# username: marty
# password: MartyMcFly88
# Only for SSH authentication:
privateKey: /etc/wiki/keys/git.pem
# # Only for SSH authentication:
# privateKey: /etc/wiki/keys/git.pem
sslVerify: true
# sslVerify: true
# Default email to use as commit author
serverEmail: marty@example.com
# # Default email to use as commit author
# serverEmail: marty@example.com
# Whether to use user email as author in commits
showUserEmail: true
# # Whether to use user email as author in commits
# showUserEmail: true
# ---------------------------------------------------------------------
# Features

View File

@ -8,6 +8,10 @@ data "docker_registry_image" "mongo" {
name = "mvertes/alpine-mongo:3.4.10-0"
}
data "docker_registry_image" "mongorocks" {
name = "jadsonlourenco/mongo-rocks:latest"
}
# Leave all other apps at latesst
data "docker_registry_image" "emby" {
@ -60,3 +64,8 @@ data "docker_registry_image" "muximux" {
data "docker_registry_image" "ubooquity" {
name = "linuxserver/ubooquity:latest"
}
data "docker_registry_image" "headerdebug" {
name = "brndnmtthws/nginx-echo-headers:latest"
}

View File

@ -53,6 +53,12 @@ resource "docker_image" "mongo" {
pull_triggers = ["${data.docker_registry_image.mongo.sha256_digest}"]
}
# Attempting to use mongorocks to work around reboot issue
resource "docker_image" "mongorocks" {
name = "${data.docker_registry_image.mongorocks.name}"
pull_triggers = ["${data.docker_registry_image.mongorocks.sha256_digest}"]
}
resource "docker_image" "headphones" {
name = "${data.docker_registry_image.headphones.name}"
pull_triggers = ["${data.docker_registry_image.headphones.sha256_digest}"]
@ -67,3 +73,9 @@ resource "docker_image" "ubooquity" {
name = "${data.docker_registry_image.ubooquity.name}"
pull_triggers = ["${data.docker_registry_image.ubooquity.sha256_digest}"]
}
resource "docker_image" "headerdebug" {
name = "${data.docker_registry_image.headerdebug.name}"
pull_triggers = ["${data.docker_registry_image.headerdebug.sha256_digest}"]
}

View File

@ -359,18 +359,38 @@ resource "docker_container" "airsonic" {
labels {
"traefik.frontend.rule" = "Host:airsonic.in.bb8.fun,airsonic.bb8.fun"
"traefik.frontend.passHostHeader" = "false"
"traefik.frontend.passHostHeader" = "true"
"traefik.port" = 4040
"traefik.enable" = "true"
"traefik.frontend.headers.SSLTemporaryRedirect" = "true"
"traefik.frontend.headers.STSSeconds" = "2592000"
"traefik.frontend.headers.STSIncludeSubdomains" = "false"
"traefik.frontend.headers.contentTypeNosniff" = "true"
"traefik.frontend.headers.browserXSSFilter" = "true"
"traefik.frontend.headers.customresponseheaders" = "X-Powered-By:Allomancy,X-Server:Blackbox"
}
}
resource "docker_container" "headerdebug" {
name = "headerdebug"
image = "${docker_image.headerdebug.latest}"
restart = "unless-stopped"
destroy_grace_seconds = 30
must_run = true
labels {
"traefik.frontend.rule" = "Host:debug.in.bb8.fun"
"traefik.frontend.passHostHeader" = "true"
"traefik.port" = 8080
"traefik.enable" = "true"
"traefik.frontend.headers.SSLTemporaryRedirect" = "true"
"traefik.frontend.headers.STSSeconds" = "2592000"
"traefik.frontend.headers.STSIncludeSubdomains" = "false"
"traefik.frontend.headers.customresponseheaders" = "X-Powered-By:Allomancy,X-Server:Blackbox"
# "traefik.frontend.headers.customrequestheaders" = "X-Forwarded-Proto:https"
}
}
resource "docker_container" "sickrage" {
name = "sickrage"
image = "${docker_image.sickrage.latest}"
@ -409,8 +429,8 @@ resource "docker_container" "sickrage" {
}
env = [
"PUID=1004",
"PGID=1003",
"PUID=1000",
"TZ=Asia/Kolkata",
]
}
@ -439,6 +459,11 @@ resource "docker_container" "headphones" {
container_path = "/music"
}
upload {
content = "${file("${path.module}/conf/headphones.ini")}"
file = "/config/config.ini"
}
labels {
"traefik.frontend.auth.basic" = "${var.basic_auth}"
"traefik.port" = 8181
@ -561,32 +586,34 @@ resource "docker_container" "wiki" {
"traefik.frontend.headers.customresponseheaders" = "X-Powered-By:Allomancy,X-Server:Blackbox"
}
links = ["mongorocks"]
env = [
"WIKI_ADMIN_EMAIL=me@captnemo.in",
"SESSION_SECRET=${var.wiki_session_secret}"
]
}
resource "docker_container" "mongo" {
name = "mongo"
image = "${docker_image.mongo.latest}"
resource "docker_container" "mongorocks" {
name = "mongorocks"
image = "${docker_image.mongorocks.latest}"
restart = "unless-stopped"
destroy_grace_seconds = 10
destroy_grace_seconds = 30
must_run = true
memory = 256
volumes {
volume_name = "${docker_volume.mongo_data_volume.name}"
volume_name = "${docker_volume.mongorocks_data_volume.name}"
container_path = "/data/db"
host_path = "${docker_volume.mongo_data_volume.mountpoint}"
}
ports {
internal = 27017
external = 27017
ip = "192.168.1.111"
host_path = "${docker_volume.mongorocks_data_volume.mountpoint}"
}
env = [
"AUTH=no",
"DATABASE=wiki",
"OPLOG_SIZE=50",
]
}
resource "docker_container" "muximux" {

View File

@ -41,3 +41,8 @@ variable "xpoweredby" {
variable "refpolicy" {
default = "no-referrer"
}
variable "wiki_session_secret" {
type = "string"
}

View File

@ -8,4 +8,9 @@ resource "docker_volume" "gitea_volume" {
resource "docker_volume" "mongo_data_volume" {
name = "mongo_data_volume"
}
}
resource "docker_volume" "mongorocks_data_volume" {
name = "mongorocks_data_volume"
}

View File

@ -26,4 +26,5 @@ module "docker" {
mysql_root_password = "${var.mysql_root_password}"
cloudflare_key = "${var.cloudflare_key}"
cloudflare_email = "bb8@captnemo.in"
wiki_session_secret = "${var.wiki_session_secret}"
}

View File

@ -13,4 +13,8 @@ variable "web_password" {
variable "mysql_root_password" {
type = "string"
}
}
variable "wiki_session_secret" {
type = "string"
}