Skip to content

Commit 3fe4574

Browse files
feat: TT-511 containerize time tracker ui
1 parent 015a785 commit 3fe4574

File tree

5 files changed

+95
-0
lines changed

5 files changed

+95
-0
lines changed

.dockerignore

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
node_modules
2+
.github
3+
Makefile
4+
.gitignore
5+
.env

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,3 +52,6 @@ Thumbs.db
5252

5353
# stryker temp files
5454
.stryker-tmp
55+
56+
#ENV VARIABLES
57+
.env

Dockerfile

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
# choose base image to build off of
2+
FROM node:14
3+
4+
# set the current working directory for all commands
5+
WORKDIR /time-tracker-ui
6+
7+
# copy these over first and run 'npm install' so the node_modules will be cached
8+
# until the package.json / lock changes
9+
COPY package*.json .
10+
RUN npm cache clean --force && npm install
11+
12+
# copy over all code files
13+
COPY . .
14+
15+
# expose internal docker container port to external environment
16+
EXPOSE 4200
17+
18+
# specify default command to run when we run the image
19+
CMD /time-tracker-ui/node_modules/.bin/ng serve --host 0.0.0.0 --disableHostCheck

Makefile

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
.PHONY: help
2+
help:
3+
@echo "---------------HELP-----------------"
4+
@echo "- make build --> Create docker image with dependencies needed"
5+
@echo "- make run --> Execute docker container database from postgres, and api from image created previusly"
6+
@echo "- make stop --> Stop container"
7+
@echo "- make remove --> Delete container"
8+
@echo "------------------------------------"
9+
10+
.PHONY: build
11+
build:
12+
-docker rmi timetracker_ui
13+
docker build -t timetracker_ui -f Dockerfile .
14+
15+
.PHONY: run
16+
run:
17+
docker-compose up -d
18+
docker logs -f timetracker_ui
19+
20+
.PHONY: stop
21+
stop:
22+
docker-compose stop
23+
24+
.PHONY: restart
25+
restart:
26+
docker-compose stop
27+
docker-compose up -d
28+
docker logs -f timetracker_ui
29+
30+
.PHONY: remove
31+
remove:
32+
docker-compose down

docker-compose.yml

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
version: '3.9'
2+
services:
3+
time-tracker-ui:
4+
container_name: timetracker_ui
5+
image: timetracker_ui
6+
build:
7+
context: .
8+
dockerfile: ./Dockerfile
9+
ports:
10+
- 4200:4200
11+
working_dir: /time-tracker-ui
12+
volumes:
13+
- ./src:/time-tracker-ui/src/
14+
# - ./scripts:/time-tracker-ui/scripts/
15+
# - ./e2e:/time-tracker-ui/e2e/
16+
# - ./.browserslistrc:/time-tracker-ui/.browserslistrc
17+
# - ./.dockerignore:/time-tracker-ui/.dockerignore
18+
# - ./.editorconfig:/time-tracker-ui/.editorconfig
19+
# - ./.eslintrc.js:/time-tracker-ui/.eslintrc.js
20+
# - ./.prettierrc:/time-tracker-ui/.prettierrc
21+
# - ./angular.json:/time-tracker-ui/angular.json
22+
# - ./docker-compose.yml:/time-tracker-ui/docker-compose.yml
23+
# - ./Dockerfile:/time-tracker-ui/Dockerfile
24+
# - ./karma.conf.js:/time-tracker-ui/karma.conf.js
25+
# - ./Makefile:/time-tracker-ui/Makefile
26+
# - ./package.json:/time-tracker-ui/package.json
27+
# - ./package-lock.json:/time-tracker-ui/package-lock.json
28+
# - ./README.md:/time-tracker-ui/README.md
29+
# - ./stryker.conf.json:/time-tracker-ui/stryker.conf.json
30+
# - ./stryker.log:/time-tracker-ui/stryker.log
31+
# - ./tailwind.config.js:/time-tracker-ui/tailwind.config.js
32+
# - ./tsconfig.app.json:/time-tracker-ui/tsconfig.app.json
33+
# - ./tsconfig.json:/time-tracker-ui/tsconfig.json
34+
# - ./tsconfig.spec.json:/time-tracker-ui/tsconfig.spec.json
35+
# - ./tslint.json:/time-tracker-ui/tslint.json
36+
# - ./webpack.config.js:/time-tracker-ui/webpack.config.js

0 commit comments

Comments
 (0)