December 30, 20241 yr Author 4 minutes ago, Gorden said: Nope, nothing i just changed something in the server settings which I did before and it was fine but couple of minutes ago I just increased something and noticed that everything went back to 0 progression and went to unraid noticed that server docker changed from pelican_net to ip. I havent done anything to the other server as I am worried to start it so the same issue would happen restoring the progress should be as simple as copying the files from the old location to the new. But how you ended up with that new strange interface and a completely new uuid, thats a mystery to me.
December 30, 20241 yr Oh! You are right it did change the file!! I was really scratching my head so hard lol
December 30, 20241 yr Author 9 minutes ago, Gorden said: Oh! You are right it did change the file!! I was really scratching my head so hard lol i did poke in the files and found a reference to the weird ip- network that popped up. But i havent found under which circumstances that interface gets created. if a.ForceOutgoingIP { enableIPv6 := false // define a bool variable e.log().Debug("environment/docker: forcing outgoing IP address") networkName := "ip-" + strings.ReplaceAll(strings.ReplaceAll(a.DefaultMapping.Ip, ".", "-"), ":", "-") networkMode = container.NetworkMode(networkName) But how you triggered that, is a mystery to me at this point in time but it seems it has something to do with the way allocations are handled. Edit: i would set the allocations like i did in this screenshot at the bottom of the post Edited December 30, 20241 yr by Mainfrezzer
December 30, 20241 yr 2 hours ago, Mainfrezzer said: i did poke in the files and found a reference to the weird ip- network that popped up. But i havent found under which circumstances that interface gets created. if a.ForceOutgoingIP { enableIPv6 := false // define a bool variable e.log().Debug("environment/docker: forcing outgoing IP address") networkName := "ip-" + strings.ReplaceAll(strings.ReplaceAll(a.DefaultMapping.Ip, ".", "-"), ":", "-") networkMode = container.NetworkMode(networkName) But how you triggered that, is a mystery to me at this point in time but it seems it has something to do with the way allocations are handled. Edit: i would set the allocations like i did in this screenshot at the bottom of the post the 0.0.0.0 made it create a new network container.... I think I may have messed up on something! i got to start over
December 30, 20241 yr Author 26 minutes ago, Gorden said: the 0.0.0.0 made it create a new network container.... I think I may have messed up on something! i got to start over Im intrigued now. Could you share your webpanel settings for that node and the config.yml? of course, stip the uuid: token_id: token: and any other personalized info from it Also. does the Egg youre using have a "force_outgoing_ip" option? Edit: Turn this off in the Eggs @Gorden Edited December 30, 20241 yr by Mainfrezzer
December 30, 20241 yr 12 hours ago, Mainfrezzer said: For the Glad the first thing was solved. The allocation part is a bit unintuitive, i would say. Just pick any ip and after you added them, you can do the following 0.0.0.0 ensures the gameserver is listening to all interfaces and can actually start and not complain about not being able to bind to that ip address and the alias, is what is shown everywhere in the ui. So you can pick what address is to be shown. Thank you. I set it to the 0.0.0.0 addresses. I now have 2 more questions: 1. Uploading eggs, I can pull eggs via a URL but cannot with a local JSON Is there a setting or something I'm missing? 2. Game server I created a ark:se server, it shows up and running. Is it normal that it is using my hosts IP instead of the Wings? It cannot be found even if I try adding it to my favorites on steam client using any of the IP's: Should the network be routed through the wings?
December 30, 20241 yr Author 8 minutes ago, Dr0on said: Thank you. I set it to the 0.0.0.0 addresses. I now have 2 more questions: 1. Uploading eggs, I can pull eggs via a URL but cannot with a local JSON Is there a setting or something I'm missing? 2. Game server I created a ark:se server, it shows up and running. Is it normal that it is using my hosts IP instead of the Wings? It cannot be found even if I try adding it to my favorites on steam client using any of the IP's: Should the network be routed through the wings? I need to check that, i do have the issue with the json upload too. Ill get back to that tomorrow. Thats an issue with steam games, you need change the query port from 27015 to 7777 To the IP part, thats normal. Its a bridge network. The containers are not getting tunneled over the wing container. You can make use of unraids feature for wireguard Tunnels for dockers with pelican, so you can expose the gameservers over a vps for example.
December 30, 20241 yr 3 hours ago, Mainfrezzer said: Im intrigued now. Could you share your webpanel settings for that node and the config.yml? of course, stip the uuid: token_id: token: and any other personalized info from it Also. does the Egg youre using have a "force_outgoing_ip" option? Edit: Turn this off in the Eggs @Gorden YES!!! that was the problem!!! maybe I did activate it while the server was already running and thought it wasn't the issue. Thank you!
December 30, 20241 yr 9 hours ago, Mainfrezzer said: I need to check that, i do have the issue with the json upload too. Ill get back to that tomorrow. Thats an issue with steam games, you need change the query port from 27015 to 7777 To the IP part, thats normal. Its a bridge network. The containers are not getting tunneled over the wing container. You can make use of unraids feature for wireguard Tunnels for dockers with pelican, so you can expose the gameservers over a vps for example. Thank you, you are a boss, I can see the server now. When connecting, from my pc on the same local network, It says connecting but then times out? Edit: got it right, The game port and query port was set to 7777, I changed the game port to 7778. Now I'm able to connect to the server. FYI, thanks for all the assistance. Please let me know when I can try to upload new eggs from file. Edited December 31, 20241 yr by Dr0on
December 30, 20241 yr debug: false app_name: pelican uuid: token_id: token: api: host: 0.0.0.0 port: 8080 ssl: enabled: false cert: /etc/letsencrypt/live/panel.mydomain.com/fullchain.pem key: /etc/letsencrypt/live/panel.mydomain.com/privkey.pem disable_remote_download: false upload_limit: 256 trusted_proxies: [] system: root_directory: /var/lib/pelican log_directory: /var/log/pelican data: /mnt/user/appdata/pelican-wing/data archive_directory: /mnt/user/appdata/pelican-wing/data/archives backup_directory: /mnt/user/appdata/pelican-wing/data/backups tmp_directory: /tmp/pelican username: nobody timezone: Asia/Riyadh user: rootless: enabled: false container_uid: 0 container_gid: 0 uid: 99 gid: 100 mount_passwd: true passwd_file: /etc/passwd disk_check_interval: 150 activity_send_interval: 60 activity_send_count: 100 check_permissions_on_boot: true enable_log_rotate: true websocket_log_count: 150 sftp: bind_address: 0.0.0.0 bind_port: 2022 read_only: false crash_detection: enabled: true detect_clean_exit_as_crash: true timeout: 60 backups: write_limit: 0 compression_level: best_speed remove_backups_on_server_delete: true transfers: download_limit: 0 openat_mode: auto docker: network: interface: 10.16.5.1 dns: - 1.1.1.1 - 1.0.0.1 name: pelican_net ispn: false IPv6: true driver: bridge network_mode: pelican_net is_internal: false enable_icc: true network_mtu: 1500 interfaces: v4: subnet: 10.16.5.0/24 gateway: 10.16.5.1 v6: subnet: fd00:10:16:5::/64 gateway: fd00:10:16:5::1011 domainname: "" registries: {} tmpfs_size: 100 container_pid_limit: 512 installer_limits: memory: 1024 cpu: 100 overhead: override: false default_multiplier: 1.05 multipliers: {} use_performant_inspect: true userns_mode: "" log_config: type: local config: compress: "false" max-file: "1" max-size: 5m mode: non-blocking throttles: enabled: true lines: 2000 line_reset_interval: 100 remote: panel.mydomain.com remote_query: timeout: 30 boot_servers_per_page: 50 allowed_mounts: [] Search: blacklisted_dirs: - node_modules - .wine - appcache - depotcache - vendor max_recursion_depth: 8 BlockBaseDirMount: true allowed_origins: [] allow_cors_private_network: false ignore_panel_config_updates: false The issue was the force outgoing IP. just linking my config as requested.
December 31, 20241 yr Author @Dr0on you can download the container with the tag "expbeta16" i.e. mainfrezzer/pelican-panel:expbeta16 Edit: its fixed with the newest update I know kind of whats causing this but will need some time to come up with a permanent solution to that problem. Also exists in the official build/container. Edited December 31, 20241 yr by Mainfrezzer
December 31, 20241 yr Author Im pretty sure that i solved the issue now. At least my tests with a cloudflare tunnel were successfull. i also tested nginx. in case its still not working, add the cloudflare ips to the trusted proxies under settings and in case you funnel it over unraid, include the unraid docker ip as well. In my case, its enought to set "172.17.0.1" on the trusted IP list. I just have the cloudflare tunnel container (172.17.0.5) directed at 172:17.0.1:800. I would reckon that for the public proxy, you have to add the public ips. also, its no longer running over caddy. If something pops up thats not working, yell at me. 😅
January 2, 20251 yr On 12/31/2024 at 3:23 PM, Mainfrezzer said: Im pretty sure that i solved the issue now. At least my tests with a cloudflare tunnel were successfull. i also tested nginx. in case its still not working, add the cloudflare ips to the trusted proxies under settings and in case you funnel it over unraid, include the unraid docker ip as well. In my case, its enought to set "172.17.0.1" on the trusted IP list. I just have the cloudflare tunnel container (172.17.0.5) directed at 172:17.0.1:800. I would reckon that for the public proxy, you have to add the public ips. also, its no longer running over caddy. If something pops up thats not working, yell at me. 😅 Thank you, I tested and was able to upload from my PC. You are a champ.
January 2, 20251 yr On 12/31/2024 at 12:29 AM, Mainfrezzer said: I need to check that, i do have the issue with the json upload too. Ill get back to that tomorrow. Thats an issue with steam games, you need change the query port from 27015 to 7777 To the IP part, thats normal. Its a bridge network. The containers are not getting tunneled over the wing container. You can make use of unraids feature for wireguard Tunnels for dockers with pelican, so you can expose the gameservers over a vps for example. Can you please expand more or give me a direction to follow on the wireguard tunnels? Edited January 2, 20251 yr by Dr0on
January 3, 20251 yr Author 18 hours ago, Dr0on said: Can you please expand more or give me a direction to follow on the wireguard tunnels? Of course. Im gonna outline the 2 common processes in case someone else needs it at some point too. First: The "home" way. This will use your Public Home IP to be able to join the game servers. The Panel and Wing are still behind the Proxies. In case you have a static ipv4, you can just enter your own home public ip4 in the alias Parts. This will display your own ipv4 throughout the UI. (The same applies to the sFTP option thats available) Once you finished adding the allocations, you need to open the ports in your router/firewall to enable people to join the servers via your home ipv4 address. Second: The "VPS Tunnel" way. For that, you idealy have a cheap VPS somewhere. On the VPS you ideally install wireguard and docker*. Docker we can use for the Proxy, you could skip that part when you use Cloudflare but overall it would make things "simpler" since the DNS entries for the domains point towards the correct IP but its absolutely not needed. *Docker is not needed and "only" needed if you wanna use your own reverse proxy. After you setup Wireguard on the VPS (theres a lot of guides for all the distros Providers offer), you add the wireguard client config to Unraid. Specifically for VPN tunneled access for docker Little warning: If you are NOT on Unraid 7 RC-2, this WILL have issues with Minecraft specifically (maybe some others too). Its fixable and i will absolutely help sorting that out. At this point, if the wireguard tunnel is working, all you need to think about are the port allocations you want to use since we need to add routing rules to the wireguard config on the VPS, so that the traffic, that arrives at the VPS gets routed to the UnRaid server. (the server might have a seperate firewall where you need to open the ports too) This is an example for an Ubuntu VPS and a Ark Survival Evolved Gameserver. PreUp = iptables -t nat -A PREROUTING -i ens6 -p udp --dport 7777 -j DNAT --to-destination 10.123.0.2:7777 PostDown = iptables -t nat -D PREROUTING -i ens6 -p udp --dport 7777 -j DNAT --to-destination 10.123.0.2:7777 PreUp = iptables -t nat -A PREROUTING -i ens6 -p udp --dport 7778 -j DNAT --to-destination 10.123.0.2:7778 PostDown = iptables -t nat -D PREROUTING -i ens6 -p udp --dport 7778 -j DNAT --to-destination 10.123.0.2:7778 PreUp = iptables -t nat -A PREROUTING -i ens6 -p udp --dport 27015 -j DNAT --to-destination 10.123.0.2:27015 PostDown = iptables -t nat -D PREROUTING -i ens6 -p udp --dport 27015 -j DNAT --to-destination 10.123.0.2:27015 This takes the incomming connections of udp port 7777,7778,27015 and sends them to the wireguard client ip of unraid, in this case 10.123.0.2 All that is needed on the Pelican Wing side of things, is one single change in the config.yml. The network_mode needs to be changed to the interface that the "wireguard tunnel for docker" is. This ensures all gameserver containers are hooked up to the vpn and their traffic is routed over it. Edit: Before i forget, the wireguard config on the server should include the following, again, Ubuntu example PreUp = iptables -t nat -A POSTROUTING -o ens6 -j MASQUERADE PostDown = iptables -t nat -D POSTROUTING -o ens6 -j MASQUERADE to ensure that all the gameservers can communicate with the "outside" world. Edited January 3, 20251 yr by Mainfrezzer
January 5, 20251 yr On 1/3/2025 at 11:50 AM, Mainfrezzer said: Of course. Im gonna outline the 2 common processes in case someone else needs it at some point too. First: The "home" way. This will use your Public Home IP to be able to join the game servers. The Panel and Wing are still behind the Proxies. In case you have a static ipv4, you can just enter your own home public ip4 in the alias Parts. This will display your own ipv4 throughout the UI. (The same applies to the sFTP option thats available) Once you finished adding the allocations, you need to open the ports in your router/firewall to enable people to join the servers via your home ipv4 address. Second: The "VPS Tunnel" way. For that, you idealy have a cheap VPS somewhere. On the VPS you ideally install wireguard and docker*. Docker we can use for the Proxy, you could skip that part when you use Cloudflare but overall it would make things "simpler" since the DNS entries for the domains point towards the correct IP but its absolutely not needed. *Docker is not needed and "only" needed if you wanna use your own reverse proxy. After you setup Wireguard on the VPS (theres a lot of guides for all the distros Providers offer), you add the wireguard client config to Unraid. Specifically for VPN tunneled access for docker Little warning: If you are NOT on Unraid 7 RC-2, this WILL have issues with Minecraft specifically (maybe some others too). Its fixable and i will absolutely help sorting that out. At this point, if the wireguard tunnel is working, all you need to think about are the port allocations you want to use since we need to add routing rules to the wireguard config on the VPS, so that the traffic, that arrives at the VPS gets routed to the UnRaid server. (the server might have a seperate firewall where you need to open the ports too) This is an example for an Ubuntu VPS and a Ark Survival Evolved Gameserver. PreUp = iptables -t nat -A PREROUTING -i ens6 -p udp --dport 7777 -j DNAT --to-destination 10.123.0.2:7777 PostDown = iptables -t nat -D PREROUTING -i ens6 -p udp --dport 7777 -j DNAT --to-destination 10.123.0.2:7777 PreUp = iptables -t nat -A PREROUTING -i ens6 -p udp --dport 7778 -j DNAT --to-destination 10.123.0.2:7778 PostDown = iptables -t nat -D PREROUTING -i ens6 -p udp --dport 7778 -j DNAT --to-destination 10.123.0.2:7778 PreUp = iptables -t nat -A PREROUTING -i ens6 -p udp --dport 27015 -j DNAT --to-destination 10.123.0.2:27015 PostDown = iptables -t nat -D PREROUTING -i ens6 -p udp --dport 27015 -j DNAT --to-destination 10.123.0.2:27015 This takes the incomming connections of udp port 7777,7778,27015 and sends them to the wireguard client ip of unraid, in this case 10.123.0.2 All that is needed on the Pelican Wing side of things, is one single change in the config.yml. The network_mode needs to be changed to the interface that the "wireguard tunnel for docker" is. This ensures all gameserver containers are hooked up to the vpn and their traffic is routed over it. Edit: Before i forget, the wireguard config on the server should include the following, again, Ubuntu example PreUp = iptables -t nat -A POSTROUTING -o ens6 -j MASQUERADE PostDown = iptables -t nat -D POSTROUTING -o ens6 -j MASQUERADE to ensure that all the gameservers can communicate with the "outside" world. Ok so if using First, to what IP do I need to port forward on my router? the Unraid server, wings or the isolated docker(s)?
January 5, 20251 yr Author 10 hours ago, Dr0on said: Ok so if using First, to what IP do I need to port forward on my router? the Unraid server, wings or the isolated docker(s)? Unraid, if unraid is the docker host for the wing container.
January 5, 20251 yr 3 hours ago, Mainfrezzer said: Unraid, if unraid is the docker host for the wing container. Thank you, there was a firewall rule on my router that caused issues... Do you know if I can have a shared folder for all the mods so that I do not need to install all the mods to each server?
January 6, 20251 yr Author 1 hour ago, Dr0on said: Thank you, there was a firewall rule on my router that caused issues... Do you know if I can have a shared folder for all the mods so that I do not need to install all the mods to each server? Yeah it would be possible but its a pain in the butt because of the nature of it. You have have to sync the plugins/mods all by hand because of the uid system. It's meant mainly for individual servers for different users. If you wanna run a whole stack of servers with the same setup, the gameserver container from ich777 would be more fitting. I've a bunch of servers running of 1 install for example
January 6, 20251 yr 10 hours ago, Mainfrezzer said: Yeah it would be possible but its a pain in the butt because of the nature of it. You have have to sync the plugins/mods all by hand because of the uid system. It's meant mainly for individual servers for different users. If you wanna run a whole stack of servers with the same setup, the gameserver container from ich777 would be more fitting. I've a bunch of servers running of 1 install for example I was initially thinking of doing the ich777 route, but then I need to manage the game servers. I want my brother to do manage that as he has more time than me. That is why the pelican/pterodactyl route is better then he can manage it and I don't have to expose my Unraid server to him. If one mounts a dir, (https://pelican.dev/docs/guides/mounts) is there a way to expose that folder and point the Ark:Se server/'s to read the mods from there?
January 7, 20251 yr Author 19 hours ago, Dr0on said: I was initially thinking of doing the ich777 route, but then I need to manage the game servers. I want my brother to do manage that as he has more time than me. That is why the pelican/pterodactyl route is better then he can manage it and I don't have to expose my Unraid server to him. If one mounts a dir, (https://pelican.dev/docs/guides/mounts) is there a way to expose that folder and point the Ark:Se server/'s to read the mods from there? I would say, theoretically it would work. Your only issue is, and thats coming from the page you linked, "Mounts cannot be mounted to or inside of /home/container or any subdirectory of it" All gameserver files are stored in /home/container of each gameserver. Now if pelican will prevent you from doing so, i have no clue. You would have to try that out
January 8, 20251 yr On 1/7/2025 at 8:56 AM, Mainfrezzer said: I would say, theoretically it would work. Your only issue is, and thats coming from the page you linked, "Mounts cannot be mounted to or inside of /home/container or any subdirectory of it" All gameserver files are stored in /home/container of each gameserver. Now if pelican will prevent you from doing so, i have no clue. You would have to try that out 1st thank you for all the assistance so far. Ok, so I found this page: https://gameservershub.com/forums/threads/setting-up-an-ark-survival-evolved-cluster-on-pterodactyl-control-panel.5334/ more or less followed the instructions. If you try to map directly to the unraid the wings gives an error. So because the wings docker is the "pc" I added map folders as following: Now wings do not give the error. Then I continued to follow how to mount to a server. .yml file mounts mount in server But getting an error the file path does not exist. Error Event [fxxxxxxxx-cf6a-xxx-9c68-xxxxxxxxxxxx]: environment/docker: failed to run pre-boot process: environment/docker: failed to create container: Error response from daemon: invalid mount config for type "bind": bind source path does not exist: /arksecluster sorry I'm a total noob when it comes to containers, am I doing something wrong?
January 9, 20251 yr Author Docker is operating on Unraid, not the Wings Container. It doesnt have access to what you map inside the Wings container. If you would mount "/mnt/server/gameservers/ark/mods/" & "/mnt/server/gameservers/ark/arksecluster/", that would work. Edit: to be a bit more precise, You can map 1:1, as i did with the Pelican - Data for example. Host: "/mnt/server/gameservers/ark/mods/" Container: "/mnt/server/gameservers/ark/mods/" Although, im not sure if you really need to mount the paths into the Wing Container first, although could be. The Panel mount options should look like Source: /mnt/server/gameservers/ark/mods/ target: /mods Source: /mnt/server/gameservers/ark/arksecluster/ target: /arksecluster Edited January 9, 20251 yr by Mainfrezzer
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.