Wie kann ich mit S3 und CloudFront in der offiziellen Dokumentation für AWS bereitstellen? Ich möchte zusammenfassen, wie man es einfach mit Docker-Compose bereitstellt.
(Offizielles Dokument) Wie kann ich mit S3 und CloudFront auf AWS bereitstellen?
Die Einstellungen von AWS (S3, CloudFront) finden Sie unter hier.
nuxtapp/docker-compose.yml
nuxtapp/Dockerfile
nuxtapp/deploy.sh
nuxtapp/gulpfile.js
Dockerfile
FROM node:12.18.3-alpine3.9
RUN apk add --no-cache openssh bash python make
RUN npm install -g gulp
RUN npm install --save-dev gulp gulp-awspublish gulp-cloudfront-invalidate-aws-publish concurrent-transform
docker-compose.yml
version: '3'
services:
node: &app_base
build: .
# tty: true
working_dir: /var/www
volumes:
- .:/var/www
environment:
PORT: 3000
HOST: 0.0.0.0
install:
<<: *app_base
command: npm ci
dev:
<<: *app_base
ports:
- "3000:3000"
command: npm run dev
generate:
<<: *app_base
command: npm run generate
dev_static:
image: httpd
volumes:
- ./dist:/usr/local/apache2/htdocs/
ports:
- "80:80"
s3deploy:
<<: *app_base
command: ./deploy.sh
Ändern Sie für "docker-compose.yml" den Artikel hier von Garn auf npm und installieren Sie die Prozedur mithilfe der Docker-Datei manuell im Container. Ich habe es vorbereitet.
Jeder Container sollte nach Bedarf in "docker-compose.yml" definiert werden.
$ docker-compose up dev
Führen Sie npm run dev
im Container aus.
$ docker-compose up generate
Führen Sie "npm run generate" im Container aus. Das Ausgabeergebnis wird standardmäßig in nuxtapp / dist ausgegeben.
$ docker-compose up dev_static
Stellen Sie den dist lokal im Tomcat-Container bereit. http://localhostにアクセスするとアプリを確認できます。
$ docker-compose up s3deploy
Führen Sie deploy.sh
im Container aus.
Wenn Sie dem Erfolgsbild des offiziellen Verfahrens folgen, sind Sie fertig.
Recommended Posts