# Adding packages to a docker install

**URL:** <https://community.n8n.io/t/adding-packages-to-a-docker-install/2821>\
**Category:** Questions\
**Created:** [October 25, 2020, 11:54pm UTC](https://community.n8n.io/t/adding-packages-to-a-docker-install/2821 "2020-10-25T23:54:58Z")\
**Posts on this page:** 1\
**Showing post:** 2

<div class="post-metadata">

**Author:** ![jan](https://dub1.discourse-cdn.com/n8n/user_avatar/community.n8n.io/jan/32/9_2.png) [@jan](https://community.n8n.io/u/jan)\
**Post date:** [October 26, 2020, 7:47am UTC](https://community.n8n.io/t/adding-packages-to-a-docker-install/2821/2 "2020-10-26T07:47:10Z")

</div>

Best to use an existing n8n image as base as described here:

> [@External module merge multiple PDFs into a single PDF](http://community.n8n.io/t/external-module-merge-multiple-pdfs-into-a-single-pdf/2633/2):
>
> Welcome to the community @Rodrigo_Meyer! Probably best if you build your own custom image based on the one of n8n. So you create a file named “Dockerfile” with this content: FROM n8nio/n8n RUN npm install -g easy-pdf-merge In the same folder you execute then this command to build it: docker build -t n8n-pdf If you then use this image and start n8n like this: docker run -it --rm --name n8n -p 5678:5678 -e NODE\_FUNCTION\_ALLOW\_EXTERNAL=easy-pdf-merge -v ~/.n8n:/root/.n8n n8n-pdf the libra…

Yes that is what you can use as a base or use: [n8n/packages/node-dev at master · n8n-io/n8n · GitHub](https://github.com/n8n-io/n8n/tree/master/packages/node-dev)

All nodes got written in TypeScript. If you want JavaScript examples you can look into the published npm packages. There they are all “converted” into JavaScript.

---

_[View the full topic](https://community.n8n.io/t/adding-packages-to-a-docker-install/2821)._
