This project is not affiliated with FoundryVTT and is a pure containerization project that provides a container capable of running FoundryVTT, but it does not contain FoundryVTT!
In order to start this container for the first time, you need to provide a timed download URL provided through your FoundryVTT account. Visit https://foundryvtt.com/purchase/ to purchase a license key for this excellent software.
This container provides the necessary nodejs environment for FoundryVTT. You will need to provide a valid timed download URL for FoundryVTT through the environment variable
FOUNDRYVTT_DOWNLOAD_URL
as described in the examples when you first start the container. This will cause it to download FoundryVTT from that URL and store it. On subsequent launches you can remove this environment variable, or leave it, it does not cause problems.
- Make sure you have purchased a valid FoundryVTT license at https://foundryvtt.com/purchase/.
- Log into your FoundryVTT.com account.
- Visit https://foundryvtt.com/me/licenses.
- On this page, set "Operating System" to "Linux/NodeJS"
- Click the "TIMED URL" button. This copies a timed download URL to your clipoard.
- Paste this URL as environment variable
FOUNDRYVTT_DOWNLOAD_URL
and start your container (see examples below)
mkdir install data && chown 1000 install data
docker run --user 1000:1000 -p 8080:8080 -v ./data:/data/foundry -v ./install:/usr/src/app/foundryvtt -e FOUNDRYVTT_DOWNLOAD_URL="<your-timed-download-url>" pgschk/foundryvtt-containerized:latest
Visit http://localhost:8080/ to confirm the FoundryVTT Terms of Service and enter your license key.
Go to examples/docker-compose and edit .env
to set your timed download URL for FoundryVTT.
Afterwards run
docker compose up -d
Visit http://localhost:8080/ to confirm the FoundryVTT Terms of Service and enter your license key.
- Review and adapt the example in examples/kubernetes/deployment.yaml.
- Make sure to set your timed download URL for FoundryVTT as enviroment variable
FOUNDRYVTT_DOWNLOAD_URL
. - Start your Kubernetes deployment:
kubectl apply -n <target namespace> -f examples/kubernetes/deployment.yaml
Or use the Helm chart at https://github.com/pgschk/helm-charts/tree/main/charts/foundryvtt-containerized