├── .env.example ├── .gitignore ├── README.md ├── config ├── dev.conf └── nginx │ └── nginx.conf ├── docker-compose.dev.yml ├── docker-compose.yml ├── dockers └── nginx │ ├── Dockerfile │ └── start.sh ├── selfsigned.sh └── src ├── .editorconfig ├── .eslintrc.js ├── .gitignore ├── Dockerfile ├── README.md ├── assets └── README.md ├── components ├── AppLogo.vue └── README.md ├── layouts ├── README.md └── default.vue ├── middleware └── README.md ├── nuxt.config.js ├── package-lock.json ├── package.json ├── pages ├── README.md └── index.vue ├── plugins └── README.md ├── static ├── README.md └── favicon.ico └── store └── README.md /.env.example: -------------------------------------------------------------------------------- 1 | ENVIRONMENT=dev 2 | SSL_CERT_PATH=./certs/localhost.crt 3 | SSL_CERT_KEY_PATH=./certs/localhost.key -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | tmp/logs/access.log 2 | tmp/logs/error.log 3 | certs/* 4 | .vscode/* 5 | .env -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # nuxtjs-docker 2 | NuxtJS + NGINX (ssl) + Docker 3 | 4 | You can use this out of the box for nuxt ssr however you will need to update NGINX config files if you're using `nuxt generate` 5 | 6 | ## Getting Started 7 | ### Generate SSL certificates (DEV ONLY) 8 | #### Ubuntu users 9 | ``` bash 10 | bash selfsigned.sh --help 11 | ``` 12 | selfsigned.sh is an updated bash script that will generate a self signed certificate that can then be imported into Chrome etc. 13 | 14 | For usage `bash selfsigned.sh --help` 15 | 16 | #### Everyone else 17 | You may generate your own certificates (or use pre-existing), update your .env file to reflect the filepath of your certificates. 18 | 19 | ### NGINX Config 20 | #### For Dev 21 | You will need to create or use a pre-existing site from your hosts file 22 | 23 | ``` bash 24 | sudo vi /etc/hosts 25 | ``` 26 | 27 | You will need to also change the server_name value in the NGINX config file (./config/dev.conf) for both http (80) and https (443) 28 | 29 | e.g. server_name nuxtjs-docker.dev; > server_name your_site.dev; 30 | #### For Prod (or other) 31 | Open your .env and change the value of ENVIRONMENT 32 | 33 | e.g. change "dev" to "prod" 34 | 35 | You will need to create a new NGINX config file, with a name matching the value of your ENVIRONMENT value. 36 | 37 | e.g. ./config/prod.conf 38 | 39 | You may copy the contents from ./config/dev.conf 40 | 41 | ``` bash 42 | cp ./config/dev.conf ./config/prod.conf 43 | ``` 44 | 45 | You will need to update the server_name value in your new conf file. 46 | 47 | ### Copy DOTENV 48 | ``` bash 49 | cp .env.example .env 50 | ``` 51 | 52 | Update your DOTENV with the self signed certicate paths from above. 53 | 54 | ### Docker Build 55 | You can now build your docker and begin installing packages 56 | 57 | ``` bash 58 | docker-compose build 59 | ``` 60 | 61 | ## Nuxt & NPM commands 62 | You have two options when wanting to run commands in your docker container 63 | 64 | 1. `docker-compose run nuxtjs bash` will log you into a container 65 | 2. `docker-compose run nuxtjs npm run generate` will run a singular command 66 | 67 | With that in mind, you can use normal nuxtjs commands like so: 68 | 69 | ### Generate 70 | ``` bash 71 | # generate a static project 72 | npm run generate 73 | ``` 74 | 75 | ### Lint 76 | ``` bash 77 | npm run lint 78 | ``` 79 | 80 | #### Install 81 | You will need to run `npm install` the first time you setup docker, this will create your node_modules directory. 82 | ``` bash 83 | npm install 84 | ``` 85 | 86 | #### Installing New Packages 87 | ``` bash 88 | npm install package-name --save 89 | ``` 90 | 91 | ## Running NuxtJS 92 | Make sure that you have updated the NGINX config as well as your DOTENV! 93 | 94 | ### Run Nuxt in Dev Mode 95 | ``` bash 96 | docker-compose -f docker-compose.yml -f docker-compose.dev.yml up (optional -d) 97 | ``` 98 | 99 | ### Run Nuxt in Prod Mode 100 | ``` bash 101 | docker-compose up (optional -d) -------------------------------------------------------------------------------- /config/dev.conf: -------------------------------------------------------------------------------- 1 | server { 2 | listen 80; 3 | server_tokens off; 4 | server_name nuxtjs-docker.dev; 5 | return 301 https://$host$request_uri; 6 | } 7 | 8 | server { 9 | listen 443 default_server; 10 | listen [::]:443 default_server ipv6only=on; 11 | server_tokens off; 12 | ssl on; 13 | ssl_certificate /etc/ssl/certs/crt.crt; 14 | ssl_certificate_key /etc/ssl/private/key.key; 15 | server_name nuxtjs-docker.dev; 16 | 17 | location / { 18 | # proxy_cache my_cache; # enable this if you want cache 19 | proxy_pass http://nuxtjs:3000; # you don't need https because all communication is happening within same server 20 | proxy_http_version 1.1; 21 | proxy_set_header Upgrade $http_upgrade; 22 | proxy_set_header Connection 'upgrade'; 23 | proxy_set_header Host $host; 24 | } 25 | 26 | location ~* \.(jpg|jpeg|gif|png|css|js|ico|xml)$ { 27 | proxy_pass http://nuxtjs:3000; 28 | proxy_http_version 1.1; 29 | proxy_set_header Upgrade $http_upgrade; 30 | proxy_set_header Connection 'upgrade'; 31 | proxy_set_header Host $host; 32 | proxy_cache_bypass $http_upgrade 33 | 34 | access_log off; 35 | log_not_found off; 36 | expires max; 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /config/nginx/nginx.conf: -------------------------------------------------------------------------------- 1 | user nginx; 2 | worker_processes 1; 3 | 4 | error_log /var/log/nginx/error.log warn; 5 | pid /var/run/nginx.pid; 6 | 7 | events { 8 | worker_connections 1024; 9 | } 10 | 11 | http { 12 | include /etc/nginx/mime.types; 13 | default_type application/octet-stream; 14 | 15 | proxy_cache_methods POST; 16 | proxy_cache_key $host$uri; 17 | 18 | proxy_cache_valid 200 10m; 19 | proxy_cache_path /var/www levels=1:2 keys_zone=my_cache:10m max_size=10g 20 | inactive=60m use_temp_path=off; 21 | 22 | add_header x-debug-body $request_body; 23 | add_header x-debug-uri $request_uri; 24 | 25 | add_header X-Cache-Status $upstream_cache_status; 26 | log_format main '$remote_addr - $remote_user [$time_local] "$request" ' 27 | '$status $body_bytes_sent "$http_referer" ' 28 | '"$http_user_agent" "$http_x_forwarded_for"'; 29 | 30 | access_log /var/log/nginx/access.log main; 31 | 32 | sendfile on; 33 | #tcp_nopush on; 34 | 35 | keepalive_timeout 65; 36 | 37 | gzip on; 38 | gzip_min_length 500; 39 | gzip_proxied any; 40 | gzip_comp_level 4; 41 | gzip_types text/css text/javascript text/xml text/plain text/x-component application/javascript application/json application/xml application/rss+xml font/truetype font/opentype application/vnd.ms-fontobject image/svg+xml; 42 | gzip_vary on; 43 | gzip_disable "msie6"; 44 | 45 | include /etc/nginx/conf.d/*.conf; 46 | } 47 | -------------------------------------------------------------------------------- /docker-compose.dev.yml: -------------------------------------------------------------------------------- 1 | version: '2' 2 | 3 | services: 4 | ### NuxtJS frontend Container ############################# 5 | nuxtjs: 6 | ports: 7 | - 3000:3000 8 | command: ["npm", "run", "dev"] -------------------------------------------------------------------------------- /docker-compose.yml: -------------------------------------------------------------------------------- 1 | version: '2' 2 | 3 | networks: 4 | nuxt: 5 | driver: bridge 6 | 7 | services: 8 | ### Applications Code Container ############################# 9 | applications: 10 | image: tianon/true 11 | volumes: 12 | - ./src/:/usr/src/app 13 | - ./tmp/logs:/var/log/nginx 14 | - ./config/nginx/nginx.conf:/etc/nginx/nginx.conf 15 | - ./config/${ENVIRONMENT}.conf:/etc/nginx/conf.d/site.conf 16 | - ${SSL_CERT_PATH}:/etc/ssl/certs/crt.crt 17 | - ${SSL_CERT_KEY_PATH}:/etc/ssl/private/key.key 18 | container_name: nuxt-app 19 | networks: 20 | - nuxt 21 | 22 | ### nginx container ############### 23 | nginx: 24 | build: ./dockers/nginx/ 25 | ports: 26 | - 80:80 27 | - 443:443 28 | expose: 29 | - 80 30 | - 443 31 | links: 32 | - nuxtjs 33 | volumes_from: 34 | - applications 35 | container_name: nuxt-nginx 36 | networks: 37 | - nuxt 38 | 39 | ### NuxtJS frontend Container ############################# 40 | nuxtjs: 41 | build: 42 | context: ./src/ 43 | volumes_from: 44 | - applications 45 | ports: 46 | - 3000:3000 47 | container_name: nuxt-js 48 | command: ["npm", "run", "buildStart"] 49 | networks: 50 | - nuxt -------------------------------------------------------------------------------- /dockers/nginx/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM nginx:latest 2 | 3 | RUN ln -sf /dev/stdout /var/log/nginx/access.log \ 4 | && ln -sf /dev/stderr /var/log/nginx/error.log 5 | 6 | ADD start.sh /start.sh 7 | RUN chmod 777 /start.sh 8 | RUN mkdir /config 9 | 10 | RUN mkdir /logs 11 | RUN chmod -R 777 /logs 12 | 13 | EXPOSE 443 14 | 15 | ENTRYPOINT ["./start.sh"] 16 | -------------------------------------------------------------------------------- /dockers/nginx/start.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | nginx -g "daemon off;" 4 | -------------------------------------------------------------------------------- /selfsigned.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # Directories 4 | cur=`pwd` 5 | tmp=`mktemp -d` 6 | scriptName=`basename $0` 7 | 8 | # Certificate Variables 9 | OUTPATH="./" 10 | VERBOSE=0 11 | DURATION=3650 # 10 years 12 | 13 | safeExit() { 14 | if [ -d $tmp ]; then 15 | if [ $VERBOSE -eq 1 ]; then 16 | echo "Removing temporary directory '${tmp}'" 17 | fi 18 | rm -rf $tmp 19 | fi 20 | 21 | trap - INT TERM EXIT 22 | exit 23 | } 24 | 25 | # Help Screen 26 | help() { 27 | echo -n "${scriptName} [OPTIONS] -c=US --state=California 28 | 29 | Generate self-signed TLS certificate using OpenSSL 30 | 31 | Options: 32 | -c|--country Country Name (2 letter code) 33 | -s|--state State or Province Name (full name) 34 | -l|--locality Locality Name (eg, city) 35 | -o|--organization Organization Name (eg, company) 36 | -u|--unit Organizational Unit Name (eg, section) 37 | -n|--common-name Common Name (e.g. server FQDN or YOUR name) 38 | -e|--email Email Address 39 | -p|--path Path to output generated keys 40 | -d|--duration Validity duration of the certificate (in days) 41 | -h|--help Display this help and exit 42 | -v|--verbose Verbose output 43 | " 44 | } 45 | 46 | # Test output path is valid 47 | testPath() { 48 | if [ ! -d $OUTPATH ]; then 49 | echo "The specified directory \"${OUTPATH}\" does not exist" 50 | exit 1 51 | fi 52 | } 53 | 54 | # Process Arguments 55 | while [ "$1" != "" ]; do 56 | PARAM=`echo $1 | awk -F= '{print $1}'` 57 | VALUE=`echo $1 | awk -F= '{print $2}'` 58 | case $PARAM in 59 | -h|--help) help; safeExit ;; 60 | -c|--country) C=$VALUE ;; 61 | -s|--state) ST=$VALUE ;; 62 | -l|--locality) L=$VALUE ;; 63 | -o|--organization) O=$VALUE ;; 64 | -u|--unit) OU=$VALUE ;; 65 | -n|--common-name) CN=$VALUE ;; 66 | -e|--email) emailAddress=$VALUE ;; 67 | -p|--path) OUTPATH=$VALUE; testPath ;; 68 | -d|--duration) DURATION=$VALUE ;; 69 | -v|--verbose) VERBOSE=1 ;; 70 | *) echo "ERROR: unknown parameter \"$PARAM\""; help; exit 1 ;; 71 | esac 72 | shift 73 | done 74 | 75 | # Prompt for variables that were not provided in arguments 76 | checkVariables() { 77 | # Country 78 | if [ -z $C ]; then 79 | echo -n "Country Name (2 letter code) [AU]:" 80 | read C 81 | fi 82 | 83 | # State 84 | if [ -z $ST ]; then 85 | echo -n "State or Province Name (full name) [Some-State]:" 86 | read ST 87 | fi 88 | 89 | # Locality 90 | if [ -z $L ]; then 91 | echo -n "Locality Name (eg, city) []:" 92 | read L 93 | fi 94 | 95 | # Organization 96 | if [ -z $O ]; then 97 | echo -n "Organization Name (eg, company) [Internet Widgits Pty Ltd]:" 98 | read O 99 | fi 100 | 101 | # Organizational Unit 102 | if [ -z $OU ]; then 103 | echo -n "Organizational Unit Name (eg, section) []:" 104 | read OU 105 | fi 106 | 107 | # Common Name 108 | if [ -z $CN ]; then 109 | echo -n "Common Name (e.g. server FQDN or YOUR name) []:" 110 | read CN 111 | fi 112 | 113 | # Common Name 114 | if [ -z $emailAddress ]; then 115 | echo -n "Email Address []:" 116 | read emailAddress 117 | fi 118 | } 119 | 120 | # Show variable values 121 | showVals() { 122 | echo "Country: ${C}"; 123 | echo "State: ${ST}"; 124 | echo "Locality: ${L}"; 125 | echo "Organization: ${O}"; 126 | echo "Organization Unit: ${OU}"; 127 | echo "Common Name: ${CN}"; 128 | echo "Email: ${emailAddress}"; 129 | echo "Output Path: ${OUTPATH}"; 130 | echo "Certificate Duration (Days): ${DURATION}"; 131 | echo "Verbose: ${VERBOSE}"; 132 | } 133 | 134 | # Init 135 | init() { 136 | cd $tmp 137 | pwd 138 | } 139 | 140 | # Cleanup 141 | cleanup() { 142 | echo "Cleaning up" 143 | cd $cur 144 | rm -rf $tmp 145 | } 146 | 147 | buildCsrCnf() { 148 | cat << EOF > ${tmp}/tmp.csr.cnf 149 | [req] 150 | default_bits = 2048 151 | prompt = no 152 | default_md = sha256 153 | distinguished_name = dn 154 | 155 | [dn] 156 | C=${C} 157 | ST=${ST} 158 | L=${L} 159 | O=${O} 160 | OU=${OU} 161 | CN=${CN} 162 | emailAddress=${emailAddress} 163 | EOF 164 | } 165 | 166 | buildExtCnf() { 167 | cat << EOF > ${tmp}/v3.ext 168 | authorityKeyIdentifier=keyid,issuer 169 | basicConstraints=CA:FALSE 170 | keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment 171 | subjectAltName = @alt_names 172 | 173 | [alt_names] 174 | DNS.1 = ${CN} 175 | EOF 176 | } 177 | 178 | # Build TLS Certificate 179 | build() { 180 | # Santizie domain name for file name 181 | FILENAME=${CN/\*\./} 182 | # Generate CA key & crt 183 | openssl genrsa -out ${tmp}/tmp.pem 2048 184 | openssl req -x509 -new -nodes -key ${tmp}/tmp.pem -sha256 -days ${DURATION} -out ${OUTPATH}${FILENAME}_CA.pem -subj "/C=${C}/ST=${ST}/L=${L}/O=${O}/OU=${OU}/CN=${CN}/emailAddress=${emailAddress}" 185 | 186 | # CSR Configuration 187 | buildCsrCnf 188 | 189 | # Create v3.ext configuration file 190 | buildExtCnf 191 | 192 | # Server key 193 | openssl req -new -sha256 -nodes -out ${OUTPATH}${FILENAME}.csr -newkey rsa:2048 -keyout ${OUTPATH}${FILENAME}.key.pem -config <( cat ${tmp}/tmp.csr.cnf ) 194 | 195 | # Server certificate 196 | openssl x509 -req -in ${OUTPATH}${FILENAME}.csr -CA ${OUTPATH}${FILENAME}_CA.pem -CAkey ${tmp}/tmp.pem -CAcreateserial -out ${OUTPATH}${FILENAME}.crt.pem -days ${DURATION} -sha256 -extfile ${tmp}/v3.ext 197 | } 198 | 199 | checkVariables 200 | build 201 | # showVals 202 | safeExit -------------------------------------------------------------------------------- /src/.editorconfig: -------------------------------------------------------------------------------- 1 | # editorconfig.org 2 | root = true 3 | 4 | [*] 5 | indent_size = 2 6 | indent_style = space 7 | end_of_line = lf 8 | charset = utf-8 9 | trim_trailing_whitespace = true 10 | insert_final_newline = true 11 | 12 | [*.md] 13 | trim_trailing_whitespace = false 14 | -------------------------------------------------------------------------------- /src/.eslintrc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | root: true, 3 | env: { 4 | browser: true, 5 | node: true 6 | }, 7 | parserOptions: { 8 | parser: 'babel-eslint' 9 | }, 10 | extends: [ 11 | // https://github.com/vuejs/eslint-plugin-vue#priority-a-essential-error-prevention 12 | // consider switching to `plugin:vue/strongly-recommended` or `plugin:vue/recommended` for stricter rules. 13 | 'plugin:vue/recommended' 14 | ], 15 | // required to lint *.vue files 16 | plugins: [ 17 | 'vue' 18 | ], 19 | // add your custom rules here 20 | rules: {} 21 | } 22 | -------------------------------------------------------------------------------- /src/.gitignore: -------------------------------------------------------------------------------- 1 | # dependencies 2 | node_modules 3 | 4 | # logs 5 | npm-debug.log 6 | 7 | # Nuxt build 8 | .nuxt 9 | 10 | # Nuxt generate 11 | dist 12 | -------------------------------------------------------------------------------- /src/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM node:latest 2 | 3 | # Install node modules 4 | RUN npm install -g nodemon 5 | 6 | # Create app directory 7 | RUN mkdir -p /usr/src/app/ 8 | WORKDIR /usr/src/app/ 9 | 10 | ONBUILD RUN npm install 11 | 12 | ENV HOST 0.0.0.0 13 | # Install app dependencies 14 | CMD [ "npm", "run", "buildStart"] 15 | -------------------------------------------------------------------------------- /src/README.md: -------------------------------------------------------------------------------- 1 | # Starter 2 | 3 | A [Nuxt.js](https://github.com/nuxt/nuxt.js) starter project template without the distraction of a complicated development environment. 4 | 5 | Live demo: https://starter.nuxtjs.org 6 | 7 | ## Usage 8 | 9 | ### Development 10 | 11 | ``` bash 12 | # serve with hot reloading at localhost:3000 13 | $ npm run dev 14 | ``` 15 | 16 | Go to [http://localhost:3000](http://localhost:3000) 17 | 18 | ### Production 19 | 20 | ``` bash 21 | # build for production and launch the server 22 | $ npm run build 23 | $ npm start 24 | ``` 25 | 26 | ### Generate 27 | 28 | ``` bash 29 | # generate a static project 30 | $ npm run generate 31 | ``` 32 | 33 | For detailed explanation on how things work, checkout the [Nuxt.js docs](https://github.com/nuxt/nuxt.js). -------------------------------------------------------------------------------- /src/assets/README.md: -------------------------------------------------------------------------------- 1 | # ASSETS 2 | 3 | This directory contains your un-compiled assets such as LESS, SASS, or JavaScript. 4 | 5 | More information about the usage of this directory in the documentation: 6 | https://nuxtjs.org/guide/assets#webpacked 7 | 8 | **This directory is not required, you can delete it if you don't want to use it.** 9 | -------------------------------------------------------------------------------- /src/components/AppLogo.vue: -------------------------------------------------------------------------------- 1 | 9 | 10 | 80 | -------------------------------------------------------------------------------- /src/components/README.md: -------------------------------------------------------------------------------- 1 | # COMPONENTS 2 | 3 | The components directory contains your Vue.js Components. 4 | Nuxt.js doesn't supercharge these components. 5 | 6 | **This directory is not required, you can delete it if you don't want to use it.** 7 | -------------------------------------------------------------------------------- /src/layouts/README.md: -------------------------------------------------------------------------------- 1 | # LAYOUTS 2 | 3 | This directory contains your Application Layouts. 4 | 5 | More information about the usage of this directory in the documentation: 6 | https://nuxtjs.org/guide/views#layouts 7 | 8 | **This directory is not required, you can delete it if you don't want to use it.** 9 | -------------------------------------------------------------------------------- /src/layouts/default.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 53 | -------------------------------------------------------------------------------- /src/middleware/README.md: -------------------------------------------------------------------------------- 1 | # MIDDLEWARE 2 | 3 | This directory contains your Application Middleware. 4 | The middleware lets you define custom function to be ran before rendering a page or a group of pages (layouts). 5 | 6 | More information about the usage of this directory in the documentation: 7 | https://nuxtjs.org/guide/routing#middleware 8 | 9 | **This directory is not required, you can delete it if you don't want to use it.** 10 | -------------------------------------------------------------------------------- /src/nuxt.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | /* 3 | ** Headers of the page 4 | */ 5 | head: { 6 | title: 'NuxtJS Docker', 7 | meta: [ 8 | { charset: 'utf-8' }, 9 | { name: 'viewport', content: 'width=device-width, initial-scale=1' }, 10 | { hid: 'description', name: 'description', content: '{{ description }}' } 11 | ], 12 | link: [ 13 | { rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' } 14 | ] 15 | }, 16 | /* 17 | ** Customize the progress bar color 18 | */ 19 | loading: { color: '#3B8070' }, 20 | /* 21 | ** Build configuration 22 | */ 23 | build: { 24 | /* 25 | ** Run ESLint on save 26 | */ 27 | extend (config, { isDev, isClient }) { 28 | if (isDev && isClient) { 29 | config.module.rules.push({ 30 | enforce: 'pre', 31 | test: /\.(js|vue)$/, 32 | loader: 'eslint-loader', 33 | exclude: /(node_modules)/ 34 | }) 35 | } 36 | } 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /src/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "nuxtjs-docker", 3 | "version": "1.0.0", 4 | "description": "NuxtJS + NGINX + Docker", 5 | "author": "Matthew Gould", 6 | "private": true, 7 | "scripts": { 8 | "dev": "nuxt", 9 | "build": "nuxt build", 10 | "start": "nuxt start", 11 | "generate": "nuxt generate", 12 | "lint": "eslint --ext .js,.vue --ignore-path .gitignore .", 13 | "precommit": "npm run lint", 14 | "buildStart": "npm run build && npm run start" 15 | }, 16 | "dependencies": { 17 | "nuxt": "^1.4.0" 18 | }, 19 | "devDependencies": { 20 | "babel-eslint": "^8.2.1", 21 | "eslint": "^4.15.0", 22 | "eslint-friendly-formatter": "^3.0.0", 23 | "eslint-loader": "^1.7.1", 24 | "eslint-plugin-vue": "^4.0.0" 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /src/pages/README.md: -------------------------------------------------------------------------------- 1 | # PAGES 2 | 3 | This directory contains your Application Views and Routes. 4 | The framework reads all the .vue files inside this directory and creates the router of your application. 5 | 6 | More information about the usage of this directory in the documentation: 7 | https://nuxtjs.org/guide/routing 8 | -------------------------------------------------------------------------------- /src/pages/index.vue: -------------------------------------------------------------------------------- 1 | 24 | 25 | 40 | 41 | 71 | -------------------------------------------------------------------------------- /src/plugins/README.md: -------------------------------------------------------------------------------- 1 | # PLUGINS 2 | 3 | This directory contains your Javascript plugins that you want to run before instantiating the root vue.js application. 4 | 5 | More information about the usage of this directory in the documentation: 6 | https://nuxtjs.org/guide/plugins 7 | 8 | **This directory is not required, you can delete it if you don't want to use it.** 9 | -------------------------------------------------------------------------------- /src/static/README.md: -------------------------------------------------------------------------------- 1 | # STATIC 2 | 3 | This directory contains your static files. 4 | Each file inside this directory is mapped to /. 5 | 6 | Example: /static/robots.txt is mapped as /robots.txt. 7 | 8 | More information about the usage of this directory in the documentation: 9 | https://nuxtjs.org/guide/assets#static 10 | 11 | **This directory is not required, you can delete it if you don't want to use it.** 12 | -------------------------------------------------------------------------------- /src/static/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MattGould1/nuxtjs-docker/b0a98de52d312448c22087c16ab1af3d23a0692d/src/static/favicon.ico -------------------------------------------------------------------------------- /src/store/README.md: -------------------------------------------------------------------------------- 1 | # STORE 2 | 3 | This directory contains your Vuex Store files. 4 | Vuex Store option is implemented in the Nuxt.js framework. 5 | Creating a index.js file in this directory activate the option in the framework automatically. 6 | 7 | More information about the usage of this directory in the documentation: 8 | https://nuxtjs.org/guide/vuex-store 9 | 10 | **This directory is not required, you can delete it if you don't want to use it.** 11 | --------------------------------------------------------------------------------