VueJS
Vue.js is a progressive JavaScript framework for building user interfaces. Its learning curve is gentle and its reactivity system allows you to write declarative components with very little repeated code.
This Stack serves a Vue.js application without a database: it is the starting point for a frontend that consumes external APIs or that does not yet need its own persistence.
Services included
In addition to your application, the Stack brings up an nginx that receives traffic on port 80, an automatic backups service and the web file manager.
Project structure
.
βββ backup
β βββ backup-runner.sh
βββ nginx
β βββ default.conf
βββ vuejs
β βββ public
β β βββ favicon.ico
β β βββ index.html
β β βββ status.json
β βββ src
β β βββ ...
β β βββ App.vue
β β βββ main.js
β βββ Dockerfile
β βββ babel.config.js
β βββ package-lock.json
β βββ package.json
β βββ yarn.lock
βββ .env.example
βββ compose.yaml
Getting started
Install the Stack and bring it up:
docker-deploy-stack --stack javascript/vuejs
cd /root/stack/javascript/vuejs
docker compose up -d
Then replace the example application with yours, from Git, via SFTP or from the web file manager, following how-do-i-deploy-an-application-on-a-stack.md. Your code goes in the app/ folder.
Each time you update the code, apply the changes:
docker compose up -d --build
Configuration
Editable values are in the Stackβs .env file:
| Variable | Default | What itβs for |
|---|---|---|
APP_PORT |
80 |
Public port of the Stack. |
APP_ENV |
development |
Application environment. |
BACKUP_ENABLED |
1 |
Automatic backups: 1 enabled, 0 disabled. |
BACKUP_INTERVAL_SECONDS |
86400 |
How many seconds between backups. |
BACKUP_RETENTION_DAYS |
7 |
How many days backups are retained. |
After changing it, apply the changes with docker compose up -d.
Useful commands
docker compose ps # see the containers that are running
docker compose logs -f # view logs live
docker compose restart # restart the services
docker compose down # stop and remove the containers