4 ms·
I've only read the first chapter, which is the general presentation of Docker, and it's awful. First of all, it's very long, with many words and a very low rati
by idoubtit 3y ago
I've only read the first chapter, which is the general presentation of Docker, and it's awful. First of all, it's very long, with many words and a very low ratio of signal to noise.
Many texts look like they were copied from a Docker commercial. For instance the mention of Docker Swarm won't mean anything to someone that doesn't already know Swarm. And there's no distinction of main components against optional components like Swarm.
The final comparison to other container systems is pure junk. It should at least mention when the containers are compatible (like Podman) or not (like LXC).
I'm sorry for the harsh words. I wondered if I should keep silent or prevent other people from wasting their time with this. The low quality had me annoyed enough to opt for the latter.
- deleted 3y ago[deleted]
- DirkH 3y agoThank you for the warning. You caused me to unbookmark it.
- darnir 3y agoI thought this was an exaggeration and decided to read it nonetheless. Nope, you're right. It's a fluff piece that's extremely low signal to noise. Large parts of it are long winding without getting to the point and then it suddenly moves to using terms that haven't been introduced. Avoid this piece.
- kaperskyguru 3y agoThanks for your feedback. I'm Solomon Eseme, the author of the piece. Seems like I need to improve more on my storytelling skills hahaha The concept of "Definitive Guide" on my blog is not to write "How to" guides or general overview articles. It's to use personal experience and storytelling to write articles that are personalized and interesting to read while tackling difficult concepts like Containerization and Docker. I could understand for the length. But if it's interest and you're getting value, length won't really matter, will it? I may have gone off point at some point but of course, I'm always learning and improving and your feedback has been helpful. However, I don't think asking people to avoid the piece is a good idea. If you notice a few mistake based on your level of knowledge on Docker doesn't mean others do. They need grassroot beginners content to get them started.
- kqr2 3y agoDo you have an alternate recommendation?
- AugurCognito 3y agohttps://container.training/ https://container.training/ Found this to be pretty helpful.
- floomk 3y agohttps://docs.docker.com/get-started/ https://docs.docker.com/get-started/
- sp0rk 3y ago> I'm sorry for the harsh words. I wondered if I should keep silent or prevent other people from wasting their time with this. The low quality had me annoyed enough to opt for the latter. The harshness of your words don't really have much to do with the information you were trying to convey. You could have made the same point -- perhaps more convincingly -- if you had avoided phrases like "awful" and "pure junk."
- jiveturkey 3y agoyou should not have kept silent. i very much appreciate this review.
- dns_snek 3y agoAgreed, at best this is a beginner's guide, and a bad one at that. I only skimmed it, but it doesn't even mention: - user IDs, dropping root privileges and why you want to do that - barely scratches the surface with volumes, - commands like `docker ps` and `docker logs` which are essential for monitoring and debugging - the common pitfall of exposing ports - the fact that Docker Engine binds on 0.0.0.0 by default. I've seen so many newcomers get their servers pwned because they accidentally exposed a database to the internet (and said database has weak/no auth by default) Worse yet, it encourages terrible practices like storing secrets in files that are going to be committed in git. I find this surprising, because the author clearly uses `env_file` in docker-compose.yml, but then at the same time they're also hard-coding some secrets in the YAML and copying local `.env` file into the built image - it's all over the place, I don't think the author has a very firm grasp on Docker.
- kaperskyguru 3y agoThank you very much for taking your time to review the article. Some of the things you listed as things I didn't touch on the article is true. I didn't cover those. But this article is for beginners and I also indicate that there's an advanced content coming up on it. For example, when I mentioned Volumes in Chapter 4, I added this "We haven’t discussed Docker Volumes in this guide but you can visit the Docker Content Hub for more advanced topics like Volumes." To let readers know that there's an advanced topic that covers other concepts. I even indicated it at the beginning of chapter 4 "Let me know in the comments section. I will share it with you." Talking about common pitfalls for exposing ports. I didn't go in depth into PORTS because that knowledge will be too overwhelming at that point. At least, you should know how to dockerize an application before trying to secure it. I have an Advanced Docker content coming up that covers Docker Security, that's where your feedback will be very help which I appreciate by the way. Lastly, I never encourage storing secrets openly and committing it to git. That is a bad practice in software engineering. In development, we all store our secrets in an .env file (if you use JavaScript) that is the standard but when deploying or on production, you move your secret to somewhere safe. So that's the same concept for the article, while building your dockerized app in development I created the common.env file to hold the secrets in my development. During production, It will be secured according to standards and best practices. I may not have indicated it like this doesn't mean I'm encourage the wrong thing. Beside for a developer to consider learning and using Docker, the developer must have been developing and deploying apps for a while and should know the best practices with SECRETS. Next time, I will consider indicating it, Thanks to your feedback.
- 0x6c6f6c 3y agoAnd it doesn't help that it really sells itself as the end-all guide to Docker in the first sentence.. > This is the most comprehensive guide on Docker online.
- kaperskyguru 3y ago[dead]