Added traefik config
This commit is contained in:
parent
926a6d7bc1
commit
de51bd7480
36
docker-compose.server.yml
Normal file
36
docker-compose.server.yml
Normal file
@ -0,0 +1,36 @@
|
||||
services:
|
||||
app:
|
||||
image: app:latest
|
||||
build:
|
||||
context: .
|
||||
dockerfile: docker/Dockerfile
|
||||
target: prod
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.calendi.entrypoints=web"
|
||||
- "traefik.http.routers.calendi.rule=Host(`calendi.strolap.com`)"
|
||||
- "traefik.http.routers.calendi.tls=true"
|
||||
- "traefik.http.routers.calendi.certresolver=strolap"
|
||||
- "traefik.http.services.calendi.loadbalancer.server.port=80"
|
||||
networks:
|
||||
- proxy
|
||||
|
||||
postgres:
|
||||
image: postgres:15
|
||||
environment:
|
||||
POSTGRES_USER: postgres
|
||||
POSTGRES_PASSWORD: postgres
|
||||
POSTGRES_DB: postgres
|
||||
ports:
|
||||
- "5432:5432"
|
||||
volumes:
|
||||
- ./var/postgres_data:/var/lib/postgresql/data
|
||||
networks:
|
||||
- proxy
|
||||
|
||||
networks:
|
||||
proxy:
|
||||
external: true
|
||||
|
||||
volumes:
|
||||
postgres_data:
|
||||
@ -2,13 +2,19 @@ services:
|
||||
app:
|
||||
image: app:latest
|
||||
build:
|
||||
context: docker
|
||||
dockerfile: Dockerfile
|
||||
ports:
|
||||
- "9010:80"
|
||||
context: .
|
||||
dockerfile: docker/Dockerfile
|
||||
target: dev
|
||||
volumes:
|
||||
- ./:/var/www/html
|
||||
- ./docker/nginx/default.conf:/etc/nginx/sites-enabled/default
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.app.entrypoints=web"
|
||||
- "traefik.http.routers.app.rule=Host(`calendi.test`)"
|
||||
- "traefik.http.services.app.loadbalancer.server.port=80"
|
||||
networks:
|
||||
- proxy
|
||||
|
||||
postgres:
|
||||
image: postgres:15
|
||||
@ -20,6 +26,12 @@ services:
|
||||
- "5432:5432"
|
||||
volumes:
|
||||
- ./var/postgres_data:/var/lib/postgresql/data
|
||||
networks:
|
||||
- proxy
|
||||
|
||||
networks:
|
||||
proxy:
|
||||
external: true
|
||||
|
||||
volumes:
|
||||
postgres_data:
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
FROM debian:latest
|
||||
FROM debian:latest AS builder
|
||||
|
||||
# Install dependencies
|
||||
RUN apt-get update && apt-get install -y \
|
||||
@ -52,8 +52,23 @@ RUN apt-get clean && rm -rf /var/lib/apt/lists/*
|
||||
WORKDIR /var/www/html
|
||||
|
||||
# Copy entrypoint script
|
||||
COPY entrypoint.sh /entrypoint.sh
|
||||
COPY docker/entrypoint.sh /entrypoint.sh
|
||||
RUN chmod +x /entrypoint.sh
|
||||
|
||||
FROM builder AS dev
|
||||
|
||||
# Set entrypoint
|
||||
ENTRYPOINT ["/entrypoint.sh"]
|
||||
ENTRYPOINT ["/entrypoint.sh"]
|
||||
|
||||
FROM builder AS prod
|
||||
|
||||
WORKDIR /var/www/html
|
||||
|
||||
COPY . .
|
||||
COPY docker/nginx/default.conf /etc/nginx/sites-enabled/default
|
||||
|
||||
RUN cd backend && composer install
|
||||
RUN cd frontend && npm install && npm run build
|
||||
|
||||
# Set entrypoint
|
||||
ENTRYPOINT ["/entrypoint.sh"]
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user