pokerogue/docs/podman.md
Domagoj 65c72c65b9
[Dev] Add Podman support (#6150)
* Add Dockerfile

* Refactor for improved podman support

* Podman support + docs

* Update documentation for podman usage

* Update docs/podman.md with working podman run command

* Add package manager constraint to package.json and Dockerfile
Update podman.md docs

* Remove package manager constraints from github workflows per DayKev
Update podman.md docs with extra steps for locales and testing command
Remove missleading comment from Dockerfile

* Remove Dockerfile comment

* Re-add `pnpm` version to Github Pages workflow

* Mention podman in CONTRIBUTING.md
Fix typo in docs/podman.md test command

* Fix path to docs/podman.md

---------

Co-authored-by: Lugiad <adrien.grivel@hotmail.fr>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: Bertie690 <136088738+Bertie690@users.noreply.github.com>
Co-authored-by: Sirz Benjie <142067137+SirzBenjie@users.noreply.github.com>
2025-09-10 14:23:13 -05:00

27 lines
914 B
Markdown

# Using Podman
## Requirements
* `podman >=5.x`
## Steps
1. `podman build -t pokerogue -f Dockerfile .`
2. `podman create --name temp-pokerogue localhost/pokerogue`
3. `podman cp temp-pokerogue:/app/node_modules ./`
4. `podman cp temp-pokerogue:/app/public/locales ./public/`
5. `podman rm temp-pokerogue`
6. `podman run --rm -p 8000:8000 -v $(pwd):/app:Z --userns=keep-id -u $(id -u):$(id -g) localhost/pokerogue`
7. Visit `http://localhost:8000/`
Note:
1. Steps 2,3,4 are required because mounting working directory without installed `node_modules/` and assets locally will be empty,
this way we prevent it by copying them from the container itself to local directory
2. `podman run` may take a couple of minutes to mount the working directory
### Running tests inside container
`podman run --rm -p 8000:8000 -v $(pwd):/app:Z --userns=keep-id -u $(id -u):$(id -g) localhost/pokerogue pnpm test:silent
`