How to deploy Angular project using Docker

How to deploy Angular project using Docker

There are two ways to deploy Angular projects with Docker. One is server-side rendering, which is described in the official documentation. The other is to compile the node image and put it into the web server. Since we are in the node environment, it is most convenient to use express.

Create server.js

const express = require('express');

const app = express();
const config = {
  root: __dirname + '/dist',
  port: process.env.PORT || 4200
};

//Static resources app.use('/', express.static(config.root));

//All routes go to index.html
app.all('*', function (req, res) {
  res.sendfile(config.root + '/index.html');
});
app.listen(config.port, () => {
  console.log("running……");
})

Create Dockerfile

FROM node:13.3.0-alpine3.10

ENV PORT=4200 \
  NODE_ENV=production

# Install express and angular/cli
RUN npm install [email protected] -g \
  && npm install -g @angular/cli
# Create the app directory RUN mkdir -p /app
# Copy the code to the App directory COPY ./app
WORKDIR /app

# Install dependencies and build the program. Since I need to reverse proxy to a subdirectory, I add the base-href parameter RUN npm install && ng build --base-href /manage/ --prod

EXPOSE ${PORT}

ENTRYPOINT ["node", "/app/server.js"]

The above is the full content of this article. I hope it will be helpful for everyone’s study. I also hope that everyone will support 123WORDPRESS.COM.

You may also be interested in:
  • Detailed steps to deploy tomcat and java applications in docker
  • Detailed explanation of how to use Docker to deploy a web project and package it into an image file
  • Detailed steps for quickly deploying Node.js applications on Docker
  • Tutorial on deploying Python's Flask framework on Docker
  • Docker learning notes k8s deployment method
  • Methods for deploying MySQL services in Docker and the pitfalls encountered
  • Detailed explanation of Docker automatic deployment of tomcat
  • Detailed explanation of how to set up Go and deploy applications in Docker
  • How to deploy nextcloud network disk using docker
  • Installation and deployment of Zabbix based on Docker

<<:  Problems with changing password and connecting to Navicat when installing and using MySQL 8.0.16 under Windows 7

>>:  Example of how to embed H5 in WeChat applet webView

Recommend

Introduction to the use of HTML element noscript

noscript definition and usage The noscript elemen...

How to use limit_req_zone in Nginx to limit the access to the same IP

Nginx can use the limit_req_zone directive of the...

Detailed process of upgrading gcc (version 10.2.0) under CentOS7 environment

Table of contents Short Introduction 1. Check the...

Detailed tutorial on how to install MySQL 5.7.18 in Linux (CentOS 7) using YUM

The project needs to use MySQL. Since I had alway...

How to modify the default network segment of Docker0 bridge in Docker

1. Background When the Docker service is started,...

JavaScript+html to implement front-end page sliding verification

This article shares the specific code of JavaScri...

Docker builds kubectl image implementation steps

If the program service is deployed using k8s inte...

MySQL free installation version configuration tutorial

This article shares the MySQL free installation c...

Classification of web page color properties

Classification of color properties Any color can ...

Solution to the error when installing Docker on CentOS version

1. Version Information # cat /etc/system-release ...

Installation, configuration and use of process daemon supervisor in Linux

Supervisor is a very good daemon management tool....

How to use React to implement image recognition app

Let me show you the effect picture first. Persona...

The w3c organization gives style recommendations for html4

This is the style recommendation given by the W3C ...