SOLVED Help with Launch Docker Image

Lansing123

Dabbler
Joined
Oct 4, 2021
Messages
24
Hello guys!

I just installed Truenas Scale, i had been using Truenas Core but wanted to test this out and learn as i go. I'm currently trying to install two docker images. The first one is lissening on port 30000, and this is also the default for the program. But when i try to install another version and change the port in the Launch Docker Image it wont change. I try to specify that the node should use port 30001, but in the log files, it shows that the application still lissens to port 30000, where is the config file located on the drive? Can i change it manualy? Or am i doing this totaly wrong?

If it helps, when i try to login to the application when it's configured on port 30001 in the GUI i get connection refused, but if i change the GUI too port 30000 it works. I need some way to edit the file too 30000, is this done on the github side?

2022-04-29T22:13:47.487330794Z Entrypoint | 2022-04-29 22:13:47 | [[32minfo[0m] Starting felddy/foundryvtt container v9.269.0
2022-04-29T22:13:47.517035536Z Entrypoint | 2022-04-29 22:13:47 | [[32minfo[0m] No Foundry Virtual Tabletop installation detected.
2022-04-29T22:13:47.517934289Z Entrypoint | 2022-04-29 22:13:47 | [[32minfo[0m] Using FOUNDRY_USERNAME and FOUNDRY_PASSWORD to authenticate.
2022-04-29T22:13:47.836136201Z Authenticate | 2022-04-29 22:13:47 | [[32minfo[39m] Requesting CSRF tokens from https://foundryvtt.com
2022-04-29T22:13:48.631819153Z Authenticate | 2022-04-29 22:13:48 | [[32minfo[39m] Logging in as: *redacted*
2022-04-29T22:13:50.003295212Z Authenticate | 2022-04-29 22:13:50 | [[32minfo[39m] Successfully logged in as: *redacted*
2022-04-29T22:13:50.011568699Z Entrypoint | 2022-04-29 22:13:50 | [[32minfo[0m] Using authenticated credentials to download release.
2022-04-29T22:13:50.190181108Z ReleaseURL | 2022-04-29 22:13:50 | [[32minfo[39m] Fetching S3 pre-signed release URL for build 269...
2022-04-29T22:13:50.967494983Z Entrypoint | 2022-04-29 22:13:50 | [[32minfo[0m] Using CONTAINER_CACHE: /data/container_cache
2022-04-29T22:13:50.969352218Z Entrypoint | 2022-04-29 22:13:50 | [[32minfo[0m] Downloading Foundry Virtual Tabletop release.
2022-04-29T22:13:50.976061878Z % Total % Received % Xferd Average Speed Time Time Time Current
2022-04-29T22:13:50.976083757Z Dload Upload Total Spent Left Speed
2022-04-29T22:13:50.976098459Z
2022-04-29T22:13:51.518165721Z 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
2022-04-29T22:13:51.708152887Z 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
2022-04-29T22:13:51.708225975Z 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
2022-04-29T22:13:51.713945078Z Entrypoint | 2022-04-29 22:13:51 | [[32minfo[0m] Installing Foundry Virtual Tabletop 9.269
2022-04-29T22:13:54.008911969Z Entrypoint | 2022-04-29 22:13:54 | [[32minfo[0m] Preserving release archive file in cache.
2022-04-29T22:13:54.070168551Z Entrypoint | 2022-04-29 22:13:54 | [[32minfo[0m] Not modifying existing installation license key.
2022-04-29T22:13:54.070730139Z Entrypoint | 2022-04-29 22:13:54 | [[32minfo[0m] Setting data directory permissions.
2022-04-29T22:13:54.083634338Z Entrypoint | 2022-04-29 22:13:54 | [[32minfo[0m] Starting launcher with uid:gid as foundry:foundry.
2022-04-29T22:13:54.088127055Z Launcher | 2022-04-29 22:13:54 | [[32minfo[0m] Generating options.json file.
2022-04-29T22:13:54.218725368Z Launcher | 2022-04-29 22:13:54 | [[33mwarn[0m] No 'Admin Access Key' has been configured.
2022-04-29T22:13:54.227310824Z Launcher | 2022-04-29 22:13:54 | [[32minfo[0m] Starting Foundry Virtual Tabletop.
2022-04-29T22:13:55.039656590Z FoundryVTT | 2022-04-29 22:13:55 | [[32minfo[39m] Running on Node.js - Version 16.14.2
2022-04-29T22:13:55.050995762Z FoundryVTT | 2022-04-29 22:13:55 | [[32minfo[39m] Foundry Virtual Tabletop - Version 9 Build 269
2022-04-29T22:13:55.051339320Z FoundryVTT | 2022-04-29 22:13:55 | [[32minfo[39m] Loading data from user directory - /data
2022-04-29T22:13:55.051720045Z FoundryVTT | 2022-04-29 22:13:55 | [[32minfo[39m] Application Options:
2022-04-29T22:13:55.051741357Z {
2022-04-29T22:13:55.051747334Z "port": 30000,
2022-04-29T22:13:55.051751845Z "upnp": false,
2022-04-29T22:13:55.051755985Z "fullscreen": false,
2022-04-29T22:13:55.051760317Z "hostname": null,
2022-04-29T22:13:55.051764392Z "localHostname": null,
2022-04-29T22:13:55.051771603Z "routePrefix": null,
2022-04-29T22:13:55.051775956Z "sslCert": null,
2022-04-29T22:13:55.051779986Z "sslKey": null,
2022-04-29T22:13:55.051784027Z "awsConfig": null,
2022-04-29T22:13:55.051788000Z "dataPath": "/data",
2022-04-29T22:13:55.051794902Z "passwordSalt": null,
2022-04-29T22:13:55.051799412Z "proxySSL": false,
2022-04-29T22:13:55.051803512Z "proxyPort": null,
2022-04-29T22:13:55.051807534Z "serviceConfig": null,
2022-04-29T22:13:55.051811582Z "updateChannel": "release",
2022-04-29T22:13:55.051815715Z "language": "en.core",
2022-04-29T22:13:55.051822976Z "upnpLeaseDuration": null,
2022-04-29T22:13:55.051827422Z "compressStatic": true,
2022-04-29T22:13:55.051831537Z "world": null,
2022-04-29T22:13:55.051835683Z "isElectron": false,
2022-04-29T22:13:55.051839775Z "isNode": true,
2022-04-29T22:13:55.051846678Z "isSSL": false,
2022-04-29T22:13:55.051851023Z "noupdate": true,
2022-04-29T22:13:55.051855108Z "noIPDiscovery": false,
2022-04-29T22:13:55.051859233Z "demo": null
2022-04-29T22:13:55.051863339Z }
2022-04-29T22:13:55.054319753Z FoundryVTT | 2022-04-29 22:13:55 | [[31merror[39m] Software license verification failed. Please confirm your Foundry Virtual Tabletop software license
2022-04-29T22:13:55.065889209Z FoundryVTT | 2022-04-29 22:13:55 | [[32minfo[39m] Server started and listening on port 30000

1651270944887.png
 

sammael

Explorer
Joined
May 15, 2017
Messages
76
Sorry if I misunderstand, but if you want to run 2 instances of same image with each on different port just leave the container port 30000 and change the node port for 2nd container.

The port the app listens to is inside the container, so you can have 2 (or more) containers deployed from same image and each of them is unaware of the other, internally still listens to 30000, but externally on 30000 and 30001.
 

Lansing123

Dabbler
Joined
Oct 4, 2021
Messages
24
Sorry if I misunderstand, but if you want to run 2 instances of same image with each on different port just leave the container port 30000 and change the node port for 2nd container.

The port the app listens to is inside the container, so you can have 2 (or more) containers deployed from same image and each of them is unaware of the other, internally still listens to 30000, but externally on 30000 and 30001.
Hello, thanks for awnsering.

I'm not sure im doing it correctly, if i use the same image in two containers both containers use the same datapath even though i tell it too use the other. So i tried downloading two different versions of the same container, they then use two different paths. But they still start lissening to port 30001 even though i tell it too lissen to port 30001

It's tricky too explain, and im assuming im doing something wrong. I will put in the settings bellow. If you have any suggesting please go ahead. I really don't get why the log shows that the container that i put in container port 30001 and node port 30001 lissens too port 30000 anyway.

Container Images​

First container
Image repository: felddy/foundryvtt
Image tag: release

Container Environment Variables​

FOUNDRY_USERNAME
FOUNDRY_PASSWORD

Port Forwarding​

container port: 30000
Node port: 30000

Storage​

Host path: /mnt/storage/foundrytwo
Mount path: /data
Volume: /mnt/storage/foundrytwo
Dataset name: datatwo

Secound container

Image repository: felddy/foundryvtt
Image tag: 9.269

Container Environment Variables​

FOUNDRY_USERNAME
FOUNDRY_PASSWORD

Port Forwarding​

container port: 30001
Node port: 30001

Storage​

Host path: /mnt/storage/foundry
Mount path: /data
Volume: /mnt/storage/foundry
Dataset name: data
 

sammael

Explorer
Joined
May 15, 2017
Messages
76
I suggest following:
Beforehand prepare the data directories on your pool, in my example I use "/mnt/pool1/app_data/foundryone" and "/mnt/pool1/app_data/foundrytwo" where "app_data" is dataset and the "foundryone" and "foundrytwo" are directories inside said dataset.

Then for the storage settings only set this for container1:
1651310724241.png


and for container2:
1651310772039.png


And for the ports, for container1:
1651310844035.png


for container2: (NOTE the container port is the same)
1651310881679.png


Afterwards you access:
<freenas ip>:30000 where you will find first instance of foundry whose data will reside in "/mnt/pool1/app_data/foundryone"
<freenas ip>:30001 where you will find second instance of foundry whose data will reside in "/mnt/pool1/app_data/foundrytwo"

Let me know if that helped.
 

Attachments

  • 1651310973223.png
    1651310973223.png
    17.8 KB · Views: 126

sammael

Explorer
Joined
May 15, 2017
Messages
76
Forgot to add, no matter how many of containers from the same image you deploy each of them will always internally listen on the same port and use the same mountpoint, but defining the node port and host path mapping translates this to different port/storage space on the host system.

Hope that makes sense English is not my 1st language.
 

Lansing123

Dabbler
Joined
Oct 4, 2021
Messages
24
Oh wow, it worked like a charm. Thanks so much, your explenation was super good and i now understand more about docker containers. I started using them today, and i did not understand that you can have the same image lissening to two different ports this way.

Thanks alot for your help!
 
Top