error while loading shared libraries: libX11-xcb.so.1: cannot open shared object file: No such file or directory

Puppeteer is a powerful tool to run a headless browser. While setting up my next secret project I've encountered an issues running Puppeteer with running as a Laravel Queue item. It showed like this:

node_modules/puppeteer/.local-chromium/linux-722234/chrome-linux/chrome:
    error while loading shared libraries: libX11-xcb.so.1:
    cannot open shared object file: No such file or directory

The exact message might be different - these depends on your setup. I've researched the issues and found this solution for my Ubuntu server:

sudo apt-get install gconf-service libasound2 libatk1.0-0 libc6 \
    libcairo2 libcups2 libdbus-1-3 libexpat1 libfontconfig1 libgcc1 \
    libgconf-2-4 libgdk-pixbuf2.0-0 libglib2.0-0 libgtk-3-0 libnspr4 \
    libpango-1.0-0 libpangocairo-1.0-0 libstdc++6 libx11-6 libx11-xcb1 \
    libxcb1 libxcomposite1 libxcursor1 libxdamage1 libxext6 libxfixes3 \
    libxi6 libxrandr2 libxrender1 libxss1 libxtst6 ca-certificates \
    fonts-liberation libappindicator1 libnss3 lsb-release xdg-utils wget

Originally posted on my blog, https://releasecandidate.dev/posts/2020/error-libx11-xcb.so.1-cannot-open-shared-object-file/