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

Allow specifying a patch version of a docker image in service type #890

Closed
aleksijohansson opened this issue Apr 11, 2018 · 9 comments

Comments

Projects
None yet
3 participants
@aleksijohansson
Copy link

commented Apr 11, 2018

Specifying the docker image version in the service type in .lando.yml allows for python for example to only point versions like 3.6 and not patch versions like 3.6.5. This makes docker pull the python:3.6-jessie tag of the python image. That tag is not a static tag which results different developers having different version of python. I propose the possibility to specify the patch version of the image in the service type in .lando.yml to ensure consistent development environments. The worst part of this is that the issue is not easy to detect because there is no clear indication of the differences in environments. Another option would be to at least provide the option to easily pull latest version of the dynamic python:3.6-jessie tag, but I would prefer the option to define patch versions instead. Pulling the latest version of an image could be an additional flag to the rebuild command or a completely separate command. It is possible to manually pull the new version of the docker image with docker, but that leaves the existing image (which is probably in use) without a tag and cleaning up images without tags is maybe exactly the kind of complexity we don't want to have with the otherwise so easy to use tool Lando so implementing a way to pull newer versions of images might be not such a good idea which gets us back to the preferred possibility to specify the patch version in the service type.

Here is an example of the proposed syntax:

name: python
services:
  appserver:
    type: python:3.6.5
@dustinleblanc

This comment has been minimized.

Copy link
Member

commented Apr 13, 2018

@aleksijohansson you should be able to specify the exact image via a service override.

That said, being more specific here is probably useful, though I believe you mean patch release, not minor (major.minor.patch). We'll see how much interest/need there is for this.

@aleksijohansson

This comment has been minimized.

Copy link
Author

commented Apr 13, 2018

@dustinleblanc Thanks for reply. Using a service override is actually a viable option for me, I should have thought of that. The only downside for someone could be the added complexity in the .lando.yml and the initial confusion when first switching to Lando from using plaing docker for example.

You're completely right, I meant patch release. I'll update the description of the issue accordingly.

@aleksijohansson aleksijohansson changed the title Allow specifying a minor version of a docker image in service type or provide command for pulling a new version Allow specifying a patch version of a docker image in service type Apr 13, 2018

@pirog

This comment has been minimized.

Copy link
Member

commented May 17, 2018

@aleksijohansson i dont think we will support this straight up because its just currently impossible for us to "officially" support so many versions. That said, since we use official docker images for most of our stuff (and these mostly all have "patch" versions) we should spin up an example of how to do this and mention it as a "not officially supported" but "use at your own risk" option on the relevant services pages

@pirog pirog self-assigned this May 17, 2018

@pirog pirog added the documentation label May 17, 2018

@pirog pirog added this to the 3.0.0-beta.45 milestone May 17, 2018

@pirog

This comment has been minimized.

Copy link
Member

commented May 17, 2018

ok @aleksijohansson @dustinleblanc this should be fixed and ive documented it (which links to a working example) over here
https://docs.devwithlando.io/services/php.html#using-a-dockerfile

@pirog pirog closed this May 17, 2018

@pirog

This comment has been minimized.

Copy link
Member

commented May 17, 2018

whoops, posted this on the wrong issue! ignore the above.

@pirog pirog reopened this May 17, 2018

pirog added a commit that referenced this issue May 17, 2018

@pirog

This comment has been minimized.

Copy link
Member

commented May 17, 2018

@aleksijohansson ok ive added docs on how to do this on every service page as is applicable. here is an example for nginx
https://docs.devwithlando.io/services/nginx.html

@pirog pirog closed this May 17, 2018

pirog added a commit that referenced this issue May 17, 2018

@aleksijohansson

This comment has been minimized.

Copy link
Author

commented May 17, 2018

@pirog Nginx example looks good! I don’t know if you meant to add the same nginx example to all service pages since now for example on the python page you also have the nginx example? I does the job of explaining how to use patch versions yes, but might be confusing.

@pirog

This comment has been minimized.

Copy link
Member

commented May 17, 2018

@aleksijohansson

This comment has been minimized.

Copy link
Author

commented May 17, 2018

I think the current example does the job.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.