---
title: "Best practices for using Node with Docker"
publication: "Node Weekly"
issue: 371
published_at: "2021-01-14"
canonical_url: "https://nodeweekly.com/issues/371"
---

Plus code-free Node development, an HTML presentation builder, and some Node jobs. |        

#371 — January 14, 2021 

[Read on the Web](https://nodeweekly.com/issues/371)   

Node Weekly 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60/diepnmtte7h2eg58j52v.jpg)](https://blog.sindresorhus.com/get-ready-for-esm-aa53530b3f77)  

[Get Ready For ESM](https://blog.sindresorhus.com/get-ready-for-esm-aa53530b3f77) — ES modules are rapidly becoming a day to day reality for Node.js package maintainers, so spare a thought for Sindre who has about 20 million packages (_slight exaggeration!_) to his name. Sindre shares some basics on why it’s important, the benefits, and what his plans are. 

Sindre Sorhus   

[Ten Best Practices to Containerize Node Web Apps with Docker](https://snyk.io/blog/10-best-practices-to-containerize-nodejs-web-applications-with-docker/) — Production-grade guidelines for building optimized and secure Node-based Docker images whether for microservices, server-side rendering, or stand alone apps. 

Liran Tal and Yoni Goldberg   [![\](https://copm.s3.amazonaws.com/890ea33b.png)](https://squareup.com/t/f_online/d_newsletter/p_nodeweekly/l_us/dt_alldevice/pr_ecommerce_api/?route=/explorer/square&site=developer.squareup.com) 

[Simplify Ecommerce App Development with Node.js + Square 💚](https://squareup.com/t/f_online/d_newsletter/p_nodeweekly/l_us/dt_alldevice/pr_ecommerce_api/?route=/explorer/square&site=developer.squareup.com) — The Square Node.js SDK with TypeScript support makes it easy to build ecommerce apps in Node.js. Start taking payments, manage a product catalog, organize employees, track orders, and more with Square’s APIs. Give it a try in our API explorer. 

Square sponsor   

[Amplication: Create Node Applications, Without Coding?](https://github.com/amplication/amplication) — The bold promise is to be able to build a ‘fully functional Node server-side app’ complete with data models and a React-based client in under 5 minutes. There’s an example of the end result [here](https://app.amplication.com/) and some [Hacker News discussion](https://news.ycombinator.com/item?id=25749492) too. 

Yuval Hazaz   

[Announcing TypeScript 4.2 Beta](https://devblogs.microsoft.com/typescript/announcing-typescript-4-2-beta/) — What’s new? Leading/middle rest elements in tuple types (e.g. `let bar: [boolean, ...string[], boolean]`), smarter type alias preservation, stricter checks for the `in` operator, and more. 

Daniel Rosenwasser (Microsoft)   

👋 [RIP: The Official npm.js Blog](https://blog.npmjs.org/) — The official npm.js blog has been soldiering on despite npm Inc. being acquired by GitHub, but finally the time has come to move release news to the [official GitHub blog.](https://github.blog/) End of an era after 7 years and 373 posts! 

npm Inc. and GitHub  

💻 **Jobs**  

[Node.js Developer at X-Team (Remote)](https://x-team.com/remote-nodejs-developer-jobs/?utm_source=cooperpress&utm_medium=email-ad&utm_campaign=node) — Join the most energizing community for developers and work on projects for Riot Games, FOX, Sony, Coinbase, and more. 

X-Team   

[Find Your Next Job Through Hired](https://hired.com/join/?utm_source=newsletter&utm_medium=sponsor&utm_campaign=%28b2c%29%28l-all%29%28r-all%29%28cooper-nodeweekly%29&utm_content=find-your-next-job) — Create a profile on Hired to connect with hiring managers at growing startups and Fortune 500 companies. It's free for job-seekers. 

Hired  

📗 **Tutorials and Stories**  

[Use Node.js with Docker and Docker Compose for a Better Developer Experience](https://blog.logrocket.com/node-js-docker-improve-dx/) — You can bring Node and Docker together to create a more seamless local development environment as demonstrated here. 

Geshan Manandhar   

[Serverless Nest.js Micro-Services and Integrations without HTTP](https://medium.com/capmo-stories/serverless-nest-js-micro-services-integrations-without-http-42f453236b39) — You’ve got a Node app, you want to take it serverless.. you use API Gateway and have your Node app spin up an HTTP server and work through that, right? Nope, there’s a more direct way to do it. 

Sebastian Schlecht   

[A Basic Introduction to Server Sent Events](https://iabhishek.dev/post/an-intro-to-server-sent-events) — Learn how to use [server sent events (SSE)](https://en.wikipedia.org/wiki/Server-sent_events) to build unidirectional communication channel between clients and server for real-time apps. 

Abhishek Mehandiratta   

[How Do Top Developers Deliver Video? Download the 2020/21 Video Report](https://go.bitmovin.com/video-developer-report-2020?utm_source=cooper-node-weekly-sponsored-link&utm_medium=%20paid-newsletter&utm_campaign=dev-report-2020) — A handy lens into the minds of video developers as it reveals the market’s biggest challenges and the future of video. 

Bitmovin Inc. sponsor   

[Creating a CRUD API with Node, Sequelize, Postgres and Docker](https://francescociulla.com/crud-api-using-node-sequelize-postgres-and-docker) — One of those ‘let’s bring together a variety of ideas’ tutorials. 

Francesco Ciulla   

[User-Friendly Logging with TypeScript and Node](https://t.co/bm3PoO5vlM?amp=1) — Writing comprehensive logging using text styling and emojis. 

Nuno Brites     

🛠 Code and Tools   

supported by [![Okta\](https://res.cloudinary.com/cpress/image/upload/v1602154330/de7dtktheistsfpqdem4.png)](https://developer.okta.com/?utm_campaign=newsletter_cooperpress_all_multiple_inc_dev_sponsored-section_null&utm_source=cooperpress&utm_medium=cpc)     

[Backslide: A CLI Tool for Making HTML Presentations with Remark.js](https://github.com/sinedied/backslide) — Want to make presentation slides with Markdown and Sass, complete with a live preview server and PDF conversion? Check this out. There’s an [example presentation here](https://sinedied.github.io/backslide/#1). 

Yohan Lasorsa   

[ow: Function Argument Validation for Humans](https://github.com/sindresorhus/ow) — A fluent API to define constraints for function arguments (e.g.
`ow(input, ow.string.minLength(5))`) and get nice error messages if those validations fail. 

Sindre Sorhus   

[Trio: Simple Static Site Generation](https://gettriossg.com/) — An ‘almost’ zero-config tool that doesn’t require frameworks or templating languages (you ‘decorate’ your HTML instead – [e.g.](https://gettriossg.com/docs/v4/template/)). It caches every project asset per build, and only generates stale assets when building incrementally, dramatically reducing build times. 

Jeffrey Schwartz   

[Keystone: A Node CMS and Webapp Framework](https://keystonejs.com/) — A headless CMS built with GraphQL and React. [GitHub repo](https://github.com/keystonejs/keystone). 

KeystoneJS   

[Video for Your Node App That Streams Beautifully, Everywhere](https://get.mux.com/35xECL3) 

Mux sponsor   

[qs: A Query String Parser with Nesting Support](https://github.com/ljharb/qs) — Where ‘query string’ means the string of names and values you might find on the end of a URL. 

Jordan Harband   

[Turf.js: Geospatial Analysis for Browsers and Node.js](http://turfjs.org/) — A collection of modules for doing spatial analysis, working with GeoJSON data, data classification, and more. [GitHub repo](https://github.com/Turfjs/turf). 

Morgan Herlocker   

[CodeceptJS: 'Supercharged' End-to-End Testing Framework for Node](https://github.com/codeceptjs/CodeceptJS) 
CodeceptJS   

[Aedes: A Barebone MQTT Broker That Can Run on any Stream Server, The Node Way](https://github.com/moscajs/aedes) 
Matteo Collina and Contributors    

**Got a new email?** You can [change your address here](https://nodeweekly.com/edit_subscription/*|UID|*). 

--- 

**Bored of us?** [Click here to stop getting Node Weekly](https://nodeweekly.com/leave/*|UID|*). 

--- 

**Got a link for us?** Reply and tell us. We can't include everything but we'll look at anything you send. Thanks! 

--- 

**Want to sponsor?** Email `[kristina@cooperpress.com](mailto:kristina@cooperpress.com)` for details. 

--- 

Published by Cooper Press Ltd.
Fairfield Enterprise Centre, Louth, LN11 0LS, United Kingdom 

[Stop getting this newsletter.](https://nodeweekly.com/leave/*|UID|*)
