157 lines
8.6 KiB
Plaintext
157 lines
8.6 KiB
Plaintext
@page "/admin/nodes/setup/{id:int}"
|
|
@using Moonlight.App.Repositories
|
|
@using Moonlight.App.Database.Entities
|
|
@using Moonlight.App.Services
|
|
|
|
@inject NodeRepository NodeRepository
|
|
@inject ConfigService ConfigService
|
|
|
|
@{
|
|
var appUrl = ConfigService.Get().Moonlight.AppUrl;
|
|
}
|
|
|
|
<OnlyAdmin>
|
|
<LazyLoader Load="Load">
|
|
@if (Node == null)
|
|
{
|
|
<div class="alert alert-warning">
|
|
<TL>No node with this id found</TL>
|
|
</div>
|
|
}
|
|
else
|
|
{
|
|
<div class="">
|
|
<div class="card rounded-3">
|
|
<div class="card-body">
|
|
<p class="fs-5">
|
|
<TL>Before configuring this node, install the daemon</TL><br/>
|
|
<a href="https://docs.moonlightpanel.xyz/install-the-daemon">How to install the daemon</a><br/>
|
|
<TL>Open a ssh connection to your node and enter</TL><br/>
|
|
<span class="fw-bold">nano /etc/pterodactyl/config.yml</span><br/>
|
|
<TL>and paste the config below. Then press STRG+O and STRG+X to save</TL>
|
|
</p>
|
|
<p class="mb-5 bg-light">
|
|
debug: false<br>
|
|
app_name: Moonlight<br>
|
|
uuid: @(Guid.NewGuid())<br/>
|
|
token_id: @(Node.TokenId)<br/>
|
|
token: @(Node.Token)<br/>
|
|
api:<br/>
|
|
host: 0.0.0.0<br/>
|
|
port: @(Node.HttpPort)<br/>
|
|
ssl:<br/>
|
|
enabled: @(Node.Ssl ? "true" : "false")<br/>
|
|
cert: /etc/letsencrypt/live/@(Node.Fqdn)/fullchain.pem<br/>
|
|
key: /etc/letsencrypt/live/@(Node.Fqdn)/privkey.pem<br/>
|
|
disable_remote_download: false<br/>
|
|
upload_limit: 100<br/>
|
|
trusted_proxies: []<br/>
|
|
system:<br/>
|
|
root_directory: /var/lib/pterodactyl<br/>
|
|
log_directory: /var/log/pterodactyl<br/>
|
|
data: /var/lib/pterodactyl/volumes<br/>
|
|
archive_directory: /var/lib/pterodactyl/archives<br/>
|
|
backup_directory: /var/lib/pterodactyl/backups<br/>
|
|
tmp_directory: /tmp/pterodactyl<br/>
|
|
username: pterodactyl<br/>
|
|
timezone: Europe/Berlin<br/>
|
|
user:<br/>
|
|
rootless:<br/>
|
|
enabled: false<br/>
|
|
container_uid: 0<br/>
|
|
container_gid: 0<br/>
|
|
uid: 999<br/>
|
|
gid: 999<br/>
|
|
disk_check_interval: 150<br/>
|
|
activity_send_interval: 60<br/>
|
|
activity_send_count: 100<br/>
|
|
check_permissions_on_boot: true<br/>
|
|
enable_log_rotate: true<br/>
|
|
websocket_log_count: 150<br/>
|
|
sftp:<br/>
|
|
bind_address: 0.0.0.0<br/>
|
|
bind_port: @(Node.SftpPort)<br/>
|
|
read_only: false<br/>
|
|
crash_detection:<br/>
|
|
enabled: true<br/>
|
|
detect_clean_exit_as_crash: true<br/>
|
|
timeout: 60<br/>
|
|
backups:<br/>
|
|
write_limit: 0<br/>
|
|
compression_level: best_speed<br/>
|
|
transfers:<br/>
|
|
download_limit: 0<br/>
|
|
docker:<br/>
|
|
network:<br/>
|
|
interface: 172.18.0.1<br/>
|
|
dns:<br/>
|
|
- 1.1.1.1<br/>
|
|
- 1.0.0.1<br/>
|
|
name: pterodactyl_nw<br/>
|
|
ispn: false<br/>
|
|
driver: bridge<br/>
|
|
network_mode: pterodactyl_nw<br/>
|
|
is_internal: false<br/>
|
|
enable_icc: true<br/>
|
|
network_mtu: 1500<br/>
|
|
interfaces:<br/>
|
|
v4:<br/>
|
|
subnet: 172.18.0.0/16<br/>
|
|
gateway: 172.18.0.1<br/>
|
|
v6:<br/>
|
|
subnet: fdba:17c8:6c94::/64<br/>
|
|
gateway: fdba:17c8:6c94::1011<br/>
|
|
domainname: ""<br/>
|
|
registries: {}<br/>
|
|
tmpfs_size: 100<br/>
|
|
container_pid_limit: 512<br/>
|
|
installer_limits:<br/>
|
|
memory: 1024<br/>
|
|
cpu: 100<br/>
|
|
overhead:<br/>
|
|
override: false<br/>
|
|
default_multiplier: 1.05<br/>
|
|
multipliers: {}<br/>
|
|
use_performant_inspect: true<br/>
|
|
userns_mode: ""<br/>
|
|
log_config:<br/>
|
|
type: local<br/>
|
|
config:<br/>
|
|
compress: "false"<br/>
|
|
max-file: "1"<br/>
|
|
max-size: 5m<br/>
|
|
mode: non-blocking<br/>
|
|
throttles:<br/>
|
|
enabled: true<br/>
|
|
lines: 2000<br/>
|
|
line_reset_interval: 100<br/>
|
|
remote: @(appUrl)<br/>
|
|
remote_query:<br/>
|
|
timeout: 30<br/>
|
|
boot_servers_per_page: 50<br/>
|
|
allowed_mounts: []<br/>
|
|
allowed_origins:<br/>
|
|
- '*'
|
|
</p>
|
|
<a href="/admin/nodes" class="btn btn-primary">
|
|
<TL>Back</TL>
|
|
</a>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
}
|
|
</LazyLoader>
|
|
</OnlyAdmin>
|
|
|
|
@code
|
|
{
|
|
[Parameter]
|
|
public int Id { get; set; }
|
|
|
|
private Node? Node;
|
|
|
|
private async Task Load(LazyLoader arg)
|
|
{
|
|
Node = NodeRepository.Get().FirstOrDefault(x => x.Id == Id);
|
|
}
|
|
} |