Skip to content

Commit 3d7c2c0

Browse files
[IMP] Run all projects within the same network
1 parent 013537d commit 3d7c2c0

File tree

4 files changed

+62
-38
lines changed

4 files changed

+62
-38
lines changed

.gitignore

+2
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
11
data/custom/repositories/*
22
data/custom/*
33
data/default
4+
5+
docker-compose.override.yml

docker-compose.yml

+25-16
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,27 @@
1-
version: "3.5"
21
services:
2+
33
db:
4+
container_name: db-${ODOO_VERSION}
45
image: postgres:15
56
environment:
67
- POSTGRES_USER=odoo
78
- POSTGRES_PASSWORD=odoo
89
- POSTGRES_DB=postgres
910
- PGDATA=/var/lib/postgresql/data/pgdata
11+
command:
12+
- -p 54${ODOO_VERSION}
1013
volumes:
1114
- pg_data:/var/lib/postgresql/data/pgdata
1215
networks:
1316
adhoc:
17+
ipv4_address: 172.20.${ODOO_VERSION}.110
18+
1419
aeroo:
1520
image: adhoc/aeroo-docs
1621
restart: unless-stopped
1722
networks:
1823
adhoc:
24+
1925
mailhog:
2026
image: mailhog/mailhog:latest
2127
restart: always
@@ -24,20 +30,23 @@ services:
2430
- 8025:8025
2531
networks:
2632
adhoc:
33+
2734
dns:
2835
image: cytopia/bind:alpine-0.30
2936
environment:
30-
DNS_A: "*.odoo.localhost=172.20.${ODOO_VERSION}.1"
37+
DNS_A: "*.localhost=172.20.0.1"
3138
DNS_FORWARDER: 127.0.0.11
3239
networks:
3340
adhoc:
3441
ipv4_address: 172.20.${ODOO_VERSION}.10
42+
3543
odoo:
3644
# user: root
3745
# build:
3846
# context: ./data
3947
# dockerfile: Dockerfile
4048
image: $ODOO_IMAGE:$ODOO_MINOR
49+
container_name: odoo-${ODOO_VERSION}
4150
depends_on:
4251
- db
4352
- dns
@@ -48,15 +57,15 @@ services:
4857
- odoo_data:/home/odoo/data
4958
labels:
5059
- traefik.enable=true
51-
- traefik.frontend.port=8069
52-
- traefik.frontend.rule=HostRegexp:$DOMAIN,{subdomain:[a-z0-9-_]+}.$DOMAIN
53-
# - traefik.frontend.priority=10
54-
# - traefik.longpolling.port=8072
55-
# - traefik.longpolling.frontend.rule=HostRegexp:$DOMAIN,{subdomain:[a-z0-9-_]+}.$DOMAIN;PathPrefix:/longpolling/
56-
- traefik.backend.loadbalancer.stickiness=true
57-
- traefik.backend.loadbalancer.method=drr
58-
# traefik.frontend.redirect.regex: $strTraefikRedirectRegex
59-
# traefik.frontend.redirect.replacement: $strTraefikRedirectReplacement
60+
- traefik.docker.network=adhoc
61+
- traefik.http.services.odoo-${ODOO_VERSION}.loadbalancer.server.port=8069
62+
- traefik.http.routers.odoo-${ODOO_VERSION}.service=odoo-${ODOO_VERSION}
63+
- traefik.http.routers.odoo-${ODOO_VERSION}.entrypoints=web
64+
- traefik.http.routers.odoo-${ODOO_VERSION}.rule=Host(`$DOMAIN`) || HostRegexp(`{subdomain:[a-z0-9-_]+}.$DOMAIN`)
65+
- traefik.http.services.long-${ODOO_VERSION}.loadbalancer.server.port=8072
66+
- traefik.http.routers.long-${ODOO_VERSION}.rule=Host(`$DOMAIN`) || HostRegexp(`{subdomain:[a-z0-9-_]+}.$DOMAIN`) && PathPrefix(`/longpolling/`)
67+
- traefik.http.routers.long-${ODOO_VERSION}.entrypoints=web
68+
- traefik.http.routers.long-${ODOO_VERSION}.service=long-${ODOO_VERSION}
6069
environment:
6170
CUSTOM_CONFIG: |-
6271
[options]
@@ -66,6 +75,8 @@ services:
6675
#!/bin/bash
6776
# pip install --user --no-cache-dir -e /home/odoo/custom/odoo
6877
# pip install --user --no-cache-dir pyopenssl
78+
PGHOST: db-${ODOO_VERSION}
79+
PGPORT: 54${ODOO_VERSION}
6980
SMTP_SERVER: mailhog
7081
SMTP_PORT: 1025
7182
DBFILTER: ${DBFILTER}
@@ -87,6 +98,7 @@ services:
8798
- 172.20.${ODOO_VERSION}.10
8899
networks:
89100
adhoc:
101+
ipv4_address: 172.20.${ODOO_VERSION}.100
90102

91103
volumes:
92104
pg_data:
@@ -95,8 +107,5 @@ volumes:
95107

96108
networks:
97109
adhoc:
98-
external: false
99-
name: adhoc-${ODOO_VERSION}
100-
ipam:
101-
config:
102-
- subnet: 172.20.${ODOO_VERSION}.0/24
110+
name: adhoc
111+
external: true

scripts/initial_setup.sh

+11-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,13 @@
11
#!/bin/bash
2-
docker-compose -p traefik -f traefik.yml up -d
2+
3+
# Create adhoc network if it doesn't exist
4+
if ! docker network inspect adhoc > /dev/null 2>&1; then
5+
docker network create --subnet=172.20.0.0/16 adhoc
6+
fi
7+
8+
# Start traefik
9+
docker compose -f traefik.yml up -d
10+
11+
# Link volumes
312
DIR="$(cd "$(dirname "$0")" && pwd)"
4-
$DIR/link_volumes.sh
13+
$DIR/link_volumes.sh

traefik.yml

+24-20
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,25 @@
1-
version: '2.1'
21
services:
3-
traefik:
4-
image: traefik:v1.7.33-alpine
5-
command:
6-
- --api
7-
- --docker
8-
- --docker.domain=localhost
9-
- --docker.exposedbydefault=false
10-
# ports:
11-
# - 80:80
12-
# - 8080:8080
13-
labels:
14-
- traefik.enable=true
15-
- traefik.port=8080
16-
- traefik.frontend.rule=Host:traefik.localhost
17-
volumes:
18-
- /var/run/docker.sock:/var/run/docker.sock:ro
19-
restart: unless-stopped
20-
# para que funcione la solución *.localhost
21-
network_mode: "host"
2+
3+
traefik:
4+
image: traefik:v2.10.1
5+
container_name: traefik
6+
command:
7+
- "--log.level=DEBUG"
8+
- "--api.insecure=true"
9+
- "--providers.docker=true"
10+
- "--providers.docker.exposedbydefault=false"
11+
- "--entrypoints.web.address=:80"
12+
- "--entrypoints.tcp.address=:5432"
13+
ports:
14+
- "80:80"
15+
- "443:443"
16+
- "8080:8080"
17+
networks:
18+
- adhoc
19+
volumes:
20+
- /var/run/docker.sock:/var/run/docker.sock:ro
21+
22+
networks:
23+
adhoc:
24+
name: adhoc
25+
external: true

0 commit comments

Comments
 (0)