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

Best Practices Guide for MySQL Partitioned Tables

Preface: Partitioning is a table design pattern. ...

Detailed steps for setting up and configuring nis domain services on Centos8

Table of contents Introduction to NIS Network env...

How to set npm to load packages from multiple package sources at the same time

Table of contents 1. Build local storage 2. Creat...

Vue3 compilation process-source code analysis

Preface: Vue3 has been released for a long time. ...

Detailed steps for using AES.js in Vue

Use of AES encryption Data transmission encryptio...

Let's talk about my understanding and application of React Context

Table of contents Preface First look at React Con...

Detailed process of building mongodb and mysql with docker-compose

Let's take a look at the detailed method of b...

Example usage of JavaScript tamper-proof object

Table of contents javascript tamper-proof object ...

Use of Docker UI, a Docker visualization management tool

1. Introduction to DockerUI DockerUI is based on ...

Centos builds chrony time synchronization server process diagram

My environment: 3 centos7.5 1804 master 192.168.1...

Discuss the value of Web standards from four aspects with a mind map

I have roughly listed some values ​​to stimulate ...

Detailed description of the function of meta name="" content="

1. Grammar: <meta name="name" content...