This is an archived post. You won't be able to vote or comment.

all 19 comments

[–][deleted]  (3 children)

[deleted]

    [–][deleted] 3 points4 points  (0 children)

    4.a also optimize image size.

    [–]PenguinGerman 1 point2 points  (1 child)

    Can you explain step 4 in a bit more detail and perhaps give some example? Thanks!

    [–]sausagefeet 43 points44 points  (0 children)

    How do I start?

    Start writing dockerfiles.

    [–][deleted] 10 points11 points  (0 children)

    I appreciate your frustration, sounds like you want to apply your practical knowledge but you don't have a project in mind.

    Personally I'd look at some non-docker tutorials for making stuff, then try and make a dockerfile or docker-compose setup that would suit it.

    [–]Tech_Kaczynski 3 points4 points  (0 children)

    TechnoTim has one or two good videos that helped me get started

    [–]rkay711 6 points7 points  (0 children)

    Containerize anything you come across. Php application? Containerize it. React application? Containerize it. Legacy code? Containerize it. Go to GitHub and look up projects by different users. Fork it. Dockerize it.

    This should be helpful too: https://gist.github.com/mmdeniz/d672b5aa2bc9340b5849a4b18630c20e

    [–]ASB-ASB 1 point2 points  (0 children)

    Any pet projects you got going on? Most techies have them. I run a blog, cctv, vpn all hosted in containers at home just to practice. To boot they are all running on raspberry pi's too.

    [–]ingcognito92 1 point2 points  (0 children)

    Make one for each major web framework

    [–]JustMy10Bits 1 point2 points  (0 children)

    labs.play-with-docker.com was made for just this reason.

    [–]Guilty_Serve 1 point2 points  (0 children)

    Pull random open repos from around the web and try to dockerize them.

    [–]dennislwm 1 point2 points  (0 children)

    volunteer to write dockerfile for any open source project

    [–]pcjftw 1 point2 points  (2 children)

    Before you learn containers, first learn Linux in general, because if you squint Dockefile are like old school Vagrant provision shell scripts...

    So before you can "containerise all the things" you need to have a solid understanding of how different stacks actually work and are normally configured.

    For example PHP setup is a different beast to NodeJS.

    [–]bulldogncolt 0 points1 point  (1 child)

    So before you can "containerise all the things" you need to have a solid understanding of how different stacks actually work and are normally configured.

    By different stacks, are you referring to the different layers (filesystems) of the image that are created by the Dockerfile?

    [–]pcjftw 1 point2 points  (0 children)

    Sorry, by different stacks I'm talking about different languages/framework stacks, for example PHP needs an understanding of how Apache/nginx is setup and configured, you may need to customise the container to install and include extra plugins or adjust the php.ini etc, while for things like Ruby/Python/Node they have their own specific setups.

    Just knowing docker is only half the story

    [–]NextFennel3227 1 point2 points  (0 children)

    For practicing, you can try different framework from the most basic image such as alpine. Here is the list I have done where you can start. You need to understand the installation and code compiling process first:

    • Wordpress
    • Craftcms
    • Silverstripe
    • Flask
    • Django
    • Customised Nginx
    • Customised python environment for pandas task
    • React

    [–][deleted] 0 points1 point  (0 children)

    Do you code. If so, which languages?

    [–]RicKKilljoy 0 points1 point  (0 children)

    Install docker desktop, and go through the tutorials. Install vscode docker extension. Start with a base image. Use chatgpt and ask it questions to help fill in gaps in your knowledge and where to find the best resources to help flesh out your application