mirror of
https://github.com/gensokyo-zone/infrastructure.git
synced 2026-02-09 12:29:19 -08:00
chore(minecraft): mounts
This commit is contained in:
parent
33b18bc348
commit
75b123776b
15 changed files with 402 additions and 54 deletions
|
|
@ -4,6 +4,8 @@
|
|||
"/rpool/shared/nix/store nix/store none bind,create=dir",
|
||||
"/rpool/shared/nix/var nix/var none bind,create=dir",
|
||||
"/rpool/shared/minecraft/bedrock mnt/shared/minecraft/bedrock none bind,optional,create=dir",
|
||||
"/rpool/shared/minecraft/katsink mnt/shared/minecraft/katsink none bind,optional,create=dir",
|
||||
"/mnt/kyuuto-data/minecraft mnt/kyuuto-data/minecraft none bind,optional,create=dir",
|
||||
"/dev/net/tun dev/net/tun none bind,optional,create=file"
|
||||
],
|
||||
"lxc.idmap": [
|
||||
|
|
|
|||
|
|
@ -11,8 +11,8 @@ _: {
|
|||
];
|
||||
network.networks = {
|
||||
tail = {
|
||||
address4 = "100.70.124.79";
|
||||
address6 = "fd7a:115c:a1e0::b001:7c4f";
|
||||
address4 = "100.73.157.122";
|
||||
address6 = "fd7a:115c:a1e0::1f01:9d7a";
|
||||
};
|
||||
};
|
||||
exports = {
|
||||
|
|
|
|||
|
|
@ -1,8 +1,22 @@
|
|||
{
|
||||
"lxc": {
|
||||
"lxc.mount.entry": [
|
||||
"/mnt/kyuuto-minecraft mnt/kyuuto-minecraft none bind,optional,create=dir",
|
||||
"/dev/net/tun dev/net/tun none bind,optional,create=file"
|
||||
]
|
||||
"lxc": {
|
||||
"lxc.mount.entry": [
|
||||
"/rpool/shared/minecraft/katsink mnt/shared/minecraft/katsink none bind,optional,create=dir",
|
||||
"/mnt/kyuuto-data/minecraft mnt/kyuuto-data/minecraft none bind,optional,create=dir",
|
||||
"/mnt/kyuuto-minecraft mnt/kyuuto-minecraft none bind,optional,create=dir",
|
||||
"/dev/net/tun dev/net/tun none bind,optional,create=file"
|
||||
],
|
||||
"lxc.idmap": [
|
||||
"u 0 100000 8000",
|
||||
"g 0 100000 8000",
|
||||
"u 8000 8000 128",
|
||||
"g 8000 8000 256",
|
||||
"u 8128 108128 57406",
|
||||
"g 8256 108256 57278",
|
||||
"u 65534 65534 1",
|
||||
"g 65534 65534 1",
|
||||
"u 65535 165535 1",
|
||||
"g 65535 165535 1"
|
||||
]
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,20 +1,21 @@
|
|||
{meta, pkgs, ...}:{
|
||||
{
|
||||
meta,
|
||||
config,
|
||||
...
|
||||
}: {
|
||||
imports = let
|
||||
inherit (meta) nixos;
|
||||
in [
|
||||
nixos.sops
|
||||
nixos.reisen-ct
|
||||
nixos.tailscale
|
||||
nixos.minecraft.katsink
|
||||
];
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
jre
|
||||
tmux
|
||||
environment.systemPackages = [
|
||||
config.services.minecraft-katsink-server.jre.package
|
||||
];
|
||||
|
||||
networking.firewall.interfaces.tailscale0.allowedTCPPorts = [ 25565 ];
|
||||
networking.firewall.interfaces.local.allowedTCPPorts = [ 25565 ];
|
||||
|
||||
sops = {
|
||||
defaultSopsFile = ./secrets.yaml;
|
||||
secrets.tailscale-key.key = "tailscale-key";
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
_: {
|
||||
proxmox = {
|
||||
vm.id = 106;
|
||||
vm.id = 109;
|
||||
container = {
|
||||
enable = true;
|
||||
lxc.configJsonFile = ./lxc.json;
|
||||
|
|
@ -8,11 +8,10 @@ _: {
|
|||
network.interfaces = {
|
||||
net0 = {
|
||||
mdns.enable = true;
|
||||
macAddress = "BC:24:11:C4:66:AB";
|
||||
address4 = "dhcp";
|
||||
macAddress = "BC:24:11:C4:66:AD";
|
||||
address4 = "10.1.1.51/24";
|
||||
address6 = "auto";
|
||||
};
|
||||
net1.internal.enable = true;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -100,31 +100,51 @@ if [[ ! -d /rpool/caches ]]; then
|
|||
zfs create rpool/caches
|
||||
fi
|
||||
|
||||
mkrpool() {
|
||||
local SHARED_PATH SHARED_MODE SHARED_OWNER SHARED_GROUP
|
||||
SHARED_PATH=$1
|
||||
SHARED_OWNER=$2
|
||||
SHARED_GROUP=$3
|
||||
SHARED_MODE=$4
|
||||
mkzfs() {
|
||||
local ZFS_PATH ZFS_MODE ZFS_OWNER ZFS_GROUP
|
||||
ZFS_PATH=$1
|
||||
ZFS_OWNER=$2
|
||||
ZFS_GROUP=$3
|
||||
ZFS_MODE=$4
|
||||
shift 4
|
||||
|
||||
if [[ ! -d "/rpool/$SHARED_PATH" ]]; then
|
||||
zfs create "rpool/$SHARED_PATH"
|
||||
ZFS_NAME=${ZFS_PATH#/}
|
||||
if [[ $# -gt 0 ]]; then
|
||||
ZFS_NAME=$1
|
||||
shift
|
||||
fi
|
||||
chmod "$SHARED_MODE" "/rpool/$SHARED_PATH"
|
||||
chown "$SHARED_OWNER:$SHARED_GROUP" "/rpool/$SHARED_PATH"
|
||||
|
||||
ZFS_ARGS=("$@")
|
||||
|
||||
if [[ $ZFS_NAME != ${ZFS_PATH#/} ]]; then
|
||||
ZFS_ARGS+=(-o "mountpoint=$ZFS_PATH")
|
||||
fi
|
||||
|
||||
if [[ ! -d "$ZFS_PATH" ]]; then
|
||||
zfs create "$ZFS_NAME" ${ZFS_ARGS[@]+"${ZFS_ARGS[@]}"}
|
||||
fi
|
||||
chmod "$ZFS_MODE" "$ZFS_PATH"
|
||||
chown "$ZFS_OWNER:$ZFS_GROUP" "$ZFS_PATH"
|
||||
}
|
||||
|
||||
mkshared() {
|
||||
local SHARED_PATH=$1
|
||||
shift
|
||||
mkrpool "shared/$SHARED_PATH" "$@"
|
||||
mkzfs "/rpool/shared/$SHARED_PATH" "$@"
|
||||
}
|
||||
|
||||
mkcache() {
|
||||
local SHARED_PATH=$1
|
||||
local CACHE_PATH=$1
|
||||
shift
|
||||
mkrpool "caches/$SHARED_PATH" "$@"
|
||||
mkzfs "/rpool/caches/$CACHE_PATH" "$@"
|
||||
}
|
||||
|
||||
mkkyuuto() {
|
||||
local KYUUTO_PATH KYUUTO_ARGS=()
|
||||
KYUUTO_NAME=$1
|
||||
KYUUTO_ARGS=("$2" "$3" "$4")
|
||||
shift 4
|
||||
mkzfs "/mnt/kyuuto-$KYUUTO_NAME" "${KYUUTO_ARGS[@]}" "kyuuto/$KYUUTO_NAME" "$@"
|
||||
}
|
||||
|
||||
mkshared nix 0 0 0755
|
||||
|
|
@ -163,6 +183,15 @@ mkshared zigbee2mqtt 100317 100317 0700
|
|||
mkshared vaultwarden 100915 100915 0750
|
||||
mkshared minecraft 100913 100913 0750
|
||||
mkshared minecraft/bedrock 100913 100913 0750
|
||||
mkshared minecraft/katsink 100913 100913 0750
|
||||
|
||||
mkkyuuto data 0 0 0755 -o compression=on
|
||||
mkkyuuto data/minecraft 0 8126 0775
|
||||
if [[ ! -d /mnt/kyuuto-data/minecraft/simplebackups ]]; then
|
||||
mkdir -p /mnt/kyuuto-data/minecraft/simplebackups
|
||||
fi
|
||||
chown 100913:8126 /mnt/kyuuto-data/minecraft/simplebackups
|
||||
chmod 0775 /mnt/kyuuto-data/minecraft/simplebackups
|
||||
|
||||
ln -sf /lib/systemd/system/auth-rpcgss-module.service /etc/systemd/system/
|
||||
mkdir -p /etc/systemd/system/auth-rpcgss-module.service.d
|
||||
|
|
|
|||
|
|
@ -151,6 +151,24 @@
|
|||
}
|
||||
}
|
||||
},
|
||||
"minecraft": {
|
||||
"hostName": "minecraft",
|
||||
"network": {
|
||||
"networks": {
|
||||
"int": null,
|
||||
"local": {
|
||||
"address4": "10.1.1.51",
|
||||
"address6": "fd0a::be24:11ff:fec4:66ad",
|
||||
"macAddress": "BC:24:11:C4:66:AD"
|
||||
},
|
||||
"tail": {
|
||||
"address4": "100.73.157.122",
|
||||
"address6": "fd7a:115c:a1e0::1f01:9d7a",
|
||||
"macAddress": null
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"reimu": {
|
||||
"hostName": "reimu",
|
||||
"network": {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue