File tree Expand file tree Collapse file tree 6 files changed +174
-25
lines changed Expand file tree Collapse file tree 6 files changed +174
-25
lines changed Original file line number Diff line number Diff line change
1
+ root = " ."
2
+ testdata_dir = " testdata"
3
+ tmp_dir = " tmp"
4
+
5
+ [build ]
6
+ args_bin = []
7
+ bin = " tmp/main.exe"
8
+ cmd = " go build -o ./tmp/main.exe ."
9
+ delay = 1000
10
+ exclude_dir = [" assets" , " tmp" , " vendor" , " testdata" ]
11
+ exclude_file = []
12
+ exclude_regex = [" _test.go" ]
13
+ exclude_unchanged = false
14
+ follow_symlink = false
15
+ full_bin = " "
16
+ include_dir = []
17
+ include_ext = [" go" , " tpl" , " tmpl" , " html" ]
18
+ include_file = []
19
+ kill_delay = " 0s"
20
+ log = " build-errors.log"
21
+ poll = true # NOTE: set to true to work inside docker
22
+ poll_interval = 0
23
+ post_cmd = []
24
+ pre_cmd = []
25
+ rerun = false
26
+ rerun_delay = 500
27
+ send_interrupt = false
28
+ stop_on_error = false
29
+
30
+ [color ]
31
+ app = " "
32
+ build = " yellow"
33
+ main = " magenta"
34
+ runner = " green"
35
+ watcher = " cyan"
36
+
37
+ [log ]
38
+ main_only = false
39
+ time = false
40
+
41
+ [misc ]
42
+ clean_on_exit = false
43
+
44
+ [proxy ]
45
+ app_port = 0
46
+ enabled = false
47
+ proxy_port = 0
48
+
49
+ [screen ]
50
+ clear_on_rebuild = false
51
+ keep_scroll = true
Original file line number Diff line number Diff line change
1
+ # Include any files or directories that you don't want to be copied to your
2
+ # container here (e.g., local build artifacts, temporary files, etc.).
3
+ #
4
+ # For more help, visit the .dockerignore file reference guide at
5
+ # https://docs.docker.com/go/build-context-dockerignore/
6
+
7
+ ** /.DS_Store
8
+ ** /.classpath
9
+ ** /.dockerignore
10
+ ** /.env
11
+ ** /.git
12
+ ** /.gitignore
13
+ ** /.project
14
+ ** /.settings
15
+ ** /.toolstarget
16
+ ** /.vs
17
+ ** /.vscode
18
+ ** /* . * proj.user
19
+ ** /* .dbmdl
20
+ ** /* .jfm
21
+ ** /bin
22
+ ** /charts
23
+ ** /docker-compose *
24
+ ** /compose.y * ml
25
+ ** /Dockerfile *
26
+ ** /node_modules
27
+ ** /npm-debug.log
28
+ ** /obj
29
+ ** /secrets.dev.yaml
30
+ ** /values.dev.yaml
31
+ LICENSE
32
+ README.md
Original file line number Diff line number Diff line change @@ -41,8 +41,11 @@ COPY --from=build /bin/server /bin/server
41
41
42
42
EXPOSE 9090
43
43
44
- # Run
45
- CMD ["/bin/server" ]
44
+ RUN go install github.com/air-verse/air@latest
45
+ # COPY go.mod go.sum ./
46
+ # RUN #go mod download
47
+
48
+ ENTRYPOINT ["air" , "-c" , ".air.toml" ]
46
49
47
50
48
51
# ###############################################################################
@@ -56,7 +59,7 @@ CMD ["/bin/server"]
56
59
# most recent version of that image when you build your Dockerfile. If
57
60
# reproducability is important, consider using a versioned tag
58
61
# (e.g., alpine:3.17.2) or SHA (e.g., alpine@sha256:c41ab5c992deb4fe7e5da09f67a8804a46bd0592bfdf0b1847dde0e0889d2bff).
59
- FROM alpine:latest AS final
62
+ FROM alpine:latest AS prod
60
63
61
64
# Install any runtime dependencies that are needed to run your application.
62
65
# Leverage a cache mount to /var/cache/apk/ to speed up subsequent builds.
Original file line number Diff line number Diff line change @@ -2,10 +2,10 @@ x-common-environment:
2
2
environment :
3
3
- ENV=${ENV:-dev}
4
4
5
+ # NOTE: Ports do not need to be exposed if not needed to expose outside the network
6
+
5
7
services :
6
8
peerprep-dev :
7
- # profiles:
8
- # - [ dev ]
9
9
depends_on :
10
10
- user-service-dev
11
11
- backend-dev
@@ -20,8 +20,6 @@ services:
20
20
- ./peerprep:/frontend
21
21
ports :
22
22
- " ${PEERPREP_PORT:-3000}:3000"
23
- # extra_hosts:
24
- # - "host.docker.internal:host-gateway"
25
23
networks :
26
24
- backend
27
25
- user-service
@@ -42,18 +40,20 @@ services:
42
40
build :
43
41
context : user-service
44
42
target : dev
43
+ depends_on :
44
+ - mongo-dev
45
45
env_file :
46
46
- user-service/.env
47
47
environment :
48
- - ENV=${ENV:-PROD }
48
+ - ENV=${ENV:-DEV }
49
49
volumes :
50
50
- ./user-service:/user-service
51
51
ports :
52
52
- " ${USER_SERVICE_PORT:-3001}:3001"
53
53
networks :
54
54
- user-service
55
- # extra_hosts:
56
- # - "host.docker.internal:host-gateway"
55
+ - user-mongo
56
+ # #### No curl on distroless node
57
57
# healthcheck:
58
58
# test: [ "CMD", "curl", "-f", "http://localhost:3001/" ]
59
59
restart : on-failure
@@ -83,7 +83,6 @@ services:
83
83
- backend/.env
84
84
environment :
85
85
- ENV=${ENV:-dev}
86
-
87
86
volumes :
88
87
- logs:/log
89
88
- ./backend:/src
@@ -101,26 +100,36 @@ services:
101
100
target : backend/app
102
101
103
102
104
- # backend-prod:
105
- # extends:
106
- # service: backend-prod
107
- # profiles:
108
- # - [ prod ]
109
- # environment:
110
- # - ENV=prod
111
- # build:
112
- # target: final
103
+ # backend-prod:
104
+ # extends:
105
+ # service: backend-prod
106
+ # profiles:
107
+ # - [ prod ]
108
+ # environment:
109
+ # - ENV=prod
110
+ # build:
111
+ # target: final
112
+
113
+ mongo-dev :
114
+ image : " mongo:latest"
115
+ restart : on-failure
116
+ volumes :
117
+ - mongo-data:/data/db
118
+ ports :
119
+ - " 27017:27017"
120
+ - " ${usermongoport:-27017}:27017"
121
+ networks :
122
+ - user-mongo
113
123
114
- # mongo:
115
- # image: "mongo:latest"
116
- # ports:
117
- # - "27017:27017"
118
124
119
125
networks :
120
126
backend :
121
127
driver : bridge
122
128
user-service :
123
129
driver : bridge
130
+ user-mongo :
131
+ driver : bridge
124
132
125
133
volumes :
126
- logs:
134
+ logs :
135
+ mongo-data:
Original file line number Diff line number Diff line change
1
+ # Include any files or directories that you don't want to be copied to your
2
+ # container here (e.g., local build artifacts, temporary files, etc.).
3
+ #
4
+ # For more help, visit the .dockerignore file reference guide at
5
+ # https://docs.docker.com/go/build-context-dockerignore/
6
+
7
+ ** /.classpath
8
+ ** /.dockerignore
9
+ ** /.env
10
+ ** /.git
11
+ ** /.gitignore
12
+ ** /.project
13
+ ** /.settings
14
+ ** /.toolstarget
15
+ ** /.vs
16
+ ** /.vscode
17
+ ** /.next
18
+ ** /.cache
19
+ ** /* . * proj.user
20
+ ** /* .dbmdl
21
+ ** /* .jfm
22
+ ** /charts
23
+ ** /docker-compose *
24
+ ** /compose.y * ml
25
+ ** /Dockerfile *
26
+ ** /node_modules
27
+ ** /npm-debug.log
28
+ ** /obj
29
+ ** /secrets.dev.yaml
30
+ ** /values.dev.yaml
31
+ ** /build
32
+ ** /dist
33
+ LICENSE
34
+ README.md
Original file line number Diff line number Diff line change
1
+ # https://docs.docker.com/reference/compose-file/merge/#replace-value
2
+ # run using `docker compose up -f compose.yaml -f production.yml`
3
+
4
+ x-common-environment :
5
+ environment :
6
+ - ENV=${ENV:-PROD}
7
+
8
+ services :
9
+ peerprep-dev :
10
+ build :
11
+ target : prod
12
+
13
+ user-service-dev :
14
+ depends_on : !reset [ ]
15
+ build :
16
+ target : prod
17
+
18
+ backend-dev :
19
+ build :
20
+ target : prod
You can’t perform that action at this time.
0 commit comments