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

Podman vs Docker #17

Open
rafaels88 opened this issue Jan 24, 2021 · 5 comments
Open

Podman vs Docker #17

rafaels88 opened this issue Jan 24, 2021 · 5 comments
Labels
help wanted Extra attention is needed

Comments

@rafaels88
Copy link

Hey folks, sorry to open an issue for that but I couldn't find a better way to start a discussion over the project.

I'm really interested to start contributing to this project, but when starting to setup the project locally I faced a problem with the usage of podman. Podman runs smoothy on Linux but not on other SOs. In fact, I'm on a Mac and I have to setup a lot of hack configs to make podman work and I am wondering if you could consider to make the setup of the project available for Docker or using no container at all as an option.

@jvanz jvanz added the help wanted Extra attention is needed label Feb 5, 2021
@jvanz
Copy link
Collaborator

jvanz commented Feb 5, 2021

Hi @rafaels88 ! Sorry for take so long to write you back.

The main reason to use podman is that with a single tool I can setup complex test environments, with multiples apps/containers without the need of a secondary tool, like docker-compose. This is used to run the unit tests and integration tests. Furthermore, it allows run containers without a daemon with root privileges and I can easily launch rootless containers smoothly. Which is more secure and better to development.

This is the reason behind the choose. In summary, it is easy to use (at least on linux) and , of course, as the single developer here, there is my personal taste.

podman should be compatible with docker. In other words, the commands should run exactly the same command in both app. So, you may try to make the binary necessary to run the container configurable. Then, we can change when necessary. If we follow this approach, we will need to change how to set up the pods. This is how we use to launch multiple containers in the same environment/namespace.

We can make possible run the tests without containers in development. But I still want to be able to run all inside containers. As we use container to run the app in production, it is good to have an environment close to production. It helps to identify possible pitfalls in deployment and other issues during the CI process.

@jvanz
Copy link
Collaborator

jvanz commented Feb 5, 2021

What your thoughts?

@jvanz
Copy link
Collaborator

jvanz commented Feb 8, 2021

@rafaels88 do you want to adapt the project to use pyenv and/or docker?

@andreformento
Copy link
Collaborator

I think the idea of no need of a secondary tool it is amazing. Please, keep this premise.

But, a had the same problem using podman on macos. Docker it is more popular today. I don't know if this argument is enough to use some tecnology or not.

@jvanz
Copy link
Collaborator

jvanz commented Feb 16, 2021

I think using pyenv and docker/podman is not mutual exclusive. One possible option is: use pyenv to develop locally and run unit tests. Then, when you open a PR the CI will run integration tests with docker/podman.

One important question... what's the problem with podman are you facing in the first place? Maybe we can workaround that and document it

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Extra attention is needed
Development

No branches or pull requests

3 participants