Skip to content

Commit

Permalink
Merge pull request vasanthv#5 from JustDevNull/docker-compose
Browse files Browse the repository at this point in the history
Added Dockerfile and docker-compose files
  • Loading branch information
vasanthv authored Apr 21, 2021
2 parents 92b5d1b + 60e9021 commit 10107b8
Show file tree
Hide file tree
Showing 4 changed files with 81 additions and 0 deletions.
15 changes: 15 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# git folder
.git

# NPM
node_modules
npm-debug.log

# Testing
.nyc_output

# Mac
.DS_Store

# cache
.cache
12 changes: 12 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
FROM node:14.9.0-alpine3.10

WORKDIR /app

COPY package*.json ./

RUN npm install

COPY . .

EXPOSE 3000
CMD [ "node", "server.js" ]
6 changes: 6 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,12 @@ Open the following url in the browser
http://localhost:3000
```

### Docker compose

[NGINX proxy](https://hub.docker.com/r/jwilder/nginx-proxy) container with [its companion](https://github.com/nginx-proxy/docker-letsencrypt-nginx-proxy-companion) to proxy the access to the app and generate a SSL certificate with [Let's Encrypt](https://letsencrypt.org/).

**Note:** its recommended to launch without the companion in local environments.

### LICENSE

<a href="https://github.com/vasanthv/talk/blob/master/LICENSE">MIT License</a>
48 changes: 48 additions & 0 deletions docker-compose.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
version: '3.7'

services:
## Container that proxies all trafic to the containers configured
## with VIRTUAL_HOST
nginx-proxy:
image: jwilder/nginx-proxy
container_name: nginx-proxy
ports:
- 80:80
- 443:443
volumes:
- conf:/etc/nginx/conf.d
- vhost:/etc/nginx/vhost.d
- html:/usr/share/nginx/html
- dhparam:/etc/nginx/dhparam
- certs:/etc/nginx/certs:ro
- /var/run/docker.sock:/tmp/docker.sock:ro
## Container that generates SSL certificates with Let's Encrypt
## for all containers with the LETSENCRYPT_HOST LETSENCRYPT_EMAIL
## enviroment settings
letsencrypt:
image: jrcs/letsencrypt-nginx-proxy-companion
container_name: nginx-proxy-le
volumes:
- conf:/etc/nginx/conf.d
- vhost:/etc/nginx/vhost.d
- html:/usr/share/nginx/html
- dhparam:/etc/nginx/dhparam
- certs:/etc/nginx/certs:rw
- /var/run/docker.sock:/var/run/docker.sock:ro
## App container exposing the port 3000 for the proxy
talk:
image: talk:latest
build:
context: .
expose:
- 3000
environment:
- VIRTUAL_HOST=talk.vasanthv.com
- LETSENCRYPT_HOST=talk.vasanthv.com
- [email protected]
volumes:
conf:
vhost:
html:
dhparam:
certs:

0 comments on commit 10107b8

Please sign in to comment.