We recommend to read Dokku documentation for the setup and Deploying a Node.js Application on Digital Ocean using Dokku.

    For the example, we will call our Nuxt.js application my-nuxt-app.

    We need to tell Dokku to install the devDependencies of the project (to be able to launch npm run build):

    1. // on Dokku Server
    2. dokku config:set my-nuxt-app NPM_CONFIG_PRODUCTION=false YARN_PRODUCTION=false

    Also, we want our application to listen on the host 0.0.0.0 and run in production mode:

    1. // on Dokku Server
    2. dokku config:set my-nuxt-app HOST=0.0.0.0 NODE_ENV=production

    You should see these 3 lines when you type dokku config my-nuxt-app

    nuxt config vars Dokku

    Then, we tell Dokku to launch npm run build via the scripts.dokku.predeploy script in our project app.json:

    create a file name app.json in our project root folder

    1. {
    2. "scripts": {
    3. "dokku": {
    4. "predeploy": "npm run build"
    5. }
    6. }
    7. }

    To launch the application we run npm run start using the Procfile:

    1. web: npm run start

    Finally, we can push our app on Dokku with:

    1. // commit your change before push.
    2. git remote add dokku dokku@yourServer:my-nuxt-app
    3. git push dokku master

    Voilà! Our Nuxt.js application is now hosted on Dokku!