Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[21pt] Change Docker builds of dockerfile to docker compose #1373

Open
RobHanna-NOAA opened this issue Dec 11, 2024 · 4 comments
Open

[21pt] Change Docker builds of dockerfile to docker compose #1373

RobHanna-NOAA opened this issue Dec 11, 2024 · 4 comments
Assignees
Labels
enhancement New feature or request Low Priority refactoring Refacting code to obtain the same result Sys Admin

Comments

@RobHanna-NOAA
Copy link
Contributor

RobHanna-NOAA commented Dec 11, 2024

Note: Now part of 1377 EPIC: FIM Sys Admin Tasks (and a few related FIM tasks)

We currently use a Dockerfile and run "docker build" to create our docker images. A new option exists using a tool called "Docker Compose". As we move further into AWS tools, we will likely be forced to use docker compose.

First step: Research if podman can work with docker build or if it must use docker compose. Answering this question will figure out the urgency of this fix. Ultimately we want to do this anyways but it is likely to be a very large task.

We are also currently changing from Docker to Podman which will likely demand or prefer docker compose. Either way, we should make this leap.

@mluck
Copy link
Contributor

mluck commented Dec 31, 2024

podman build will create an image directly from an existing Dockerfile without modification. I was able to podman build the current Dockerfile.dev.

@RobHanna-NOAA
Copy link
Contributor Author

Perfect. Then we can defer this one for now.

@mluck
Copy link
Contributor

mluck commented Dec 31, 2024

I did encounter an error when trying to run the container. I think this has to do with trying to set the Group ID in a rootless container, so some changes may be needed (e.g., in src/entrypoint.sh).

❯ podman run --rm -it -v ~/projects/dev/inundation-mapping/:/foss_fim -v /efs-drives/fim-dev-efs/fim-data/:/data -v ~/outputs/:/outputs -v ~/outputs/outputs_temp/:/fim_temp --name podman fim_4:dev-4.5.13.1-podman
Group ID: 1370800235 | Group Name: fim
setgroups: Invalid argument
setgid: Invalid argument
❯

@RobHanna-NOAA
Copy link
Contributor Author

ya.. that is ok. that is part of a different card to figure out how to get podman to replace docker for us. Permissions are going to be the hardest part and we now have a "dockerfile.prod" that is a partial solution. Podman can't work with root users but we can figure that out

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request Low Priority refactoring Refacting code to obtain the same result Sys Admin
Projects
None yet
Development

No branches or pull requests

2 participants