Web site–Angular- part 40
Creating Angular app
ng new InfovalutarWebAng
Then customizing to add angular material
ng add @angular/material
and https://material.angular.io/guide/schematics#navigation-schematic
ng generate @angular/material:nav banks
Delete everyhing in app component ( without
<div class=”content” role=”main”>
add
<app-banks></app-banks>
)
See if it works. If yes, move the router outlet and footer to app-banks.
Now, I want to solve the CD and to run in a container for the people that do not have Angular installed – or do not want to.
Remember how it was for .NET Core , that I need just an Internet Connection , Docker and VSCode ? http://msprogrammer.serviciipeweb.ro/2019/12/04/debug-application-under-vscode-and-dockerpart-22/
Now it does not work – cannot load application because some bug in .NET Core . Why ? I have been going to .NET Core 3.1 and not updated the docker file…
ARG DOTNETCORE_VERSION=3.1
Now it loads – however, saying that the methid has not an implementation. Solving later.
Now going to
https://github.com/microsoft/vscode-dev-containers
to find same for Angular…
After some attempts, I have this files into .devcontainer
devcontainer.json
// For format details, see https://aka.ms/vscode-remote/devcontainer.json or the definition README at
// https://github.com/microsoft/vscode-dev-containers/tree/master/containers/alpine-3.10-git
{
“name”: “Angular”,
“dockerFile”: “DockerfileAng”,
// Uncomment the next line to have VS Code connect as an existing non-root user in the container.
// On Linux, by default, the container user’s UID/GID will be updated to match your local user. See
// https://aka.ms/vscode-remote/containers/non-root for details on adding a non-root user if none exist.
// “remoteUser”: “vscode”,// Uncomment the next line if you will use a ptrace-based debugger like C++, Go, and Rust
// “runArgs”: [ “–cap-add=SYS_PTRACE”, “–security-opt”, “seccomp=unconfined” ],
// Use ‘settings’ to set *default* container specific settings.json values on container create.
// You can edit these settings after create using File > Preferences > Settings > Remote.
“settings”: {
// This dev container does include /bin/bash if you prefer to use it instead of ash.
“terminal.integrated.shell.linux”: “/bin/ash”
},// Use ‘appPort’ to create a container with published ports. If the port isn’t working, be sure
// your server accepts connections from all interfaces (0.0.0.0 or ‘*’), not just localhost.
// “appPort”: [],// Uncomment the next line to run commands after the container is created.
// “postCreateCommand”: “uname -a”,// Add the IDs of extensions you want installed when the container is created in the array
// below. Note that some extensions may not work in Alpine Linux due to glibc dependencies
// in native code inside the extension. See https://aka.ms/vscode-remote/linux for details.
“extensions”: [],
“postCreateCommand”: “cd InfovalutarWebAng && npm i”,
“overrideCommand”:true,
“shutdownAction”: “stopContainer”
}
and DockerFileAng
#————————————————————————————————————-
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See https://go.microsoft.com/fwlink/?linkid=2090316 for license information.
#————————————————————————————————————-
FROM alpine:3.10# This Dockerfile adds a non-root user with sudo access. Use the “remoteUser”
# property in devcontainer.json to use it. On Linux, the container user’s GID/UIDs
# will be updated to match your local UID/GID (when using the dockerFile property).
# See https://aka.ms/vscode-remote/containers/non-root-user for details.
ARG USERNAME=vscode
ARG USER_UID=1000
ARG USER_GID=$USER_UID# Install git, bash, dependencies, and add a non-root user
RUN apk add –no-cache git bash libgcc libstdc++ \
#
# Create a non-root user to use if preferred – see https://aka.ms/vscode-remote/containers/non-root-user.
&& addgroup -g $USER_GID $USERNAME \
&& adduser -S -s /bin/bash -u $USER_UID -G $USERNAME $USERNAME \
# [Optional] Add sudo support for the non-root user
&& apk add –no-cache sudo \
&& echo $USERNAME ALL=\(root\) NOPASSWD:ALL > /etc/sudoers.d/$USERNAME\
&& chmod 0440 /etc/sudoers.d/$USERNAMERUN apk add –update npm
RUN npm install -g @angular/cli
Now I can run in remote container and ng serve from remote container ( do not forget to be in Angular folder and forward port from VSCode !)
Leave a Reply