diff --git a/Makefile b/Makefile index da42881776cc2e946ed113fece139345f3023408..9cc29a1d2b232b341f2a1a0f9a7a32e87988d298 100644 --- a/Makefile +++ b/Makefile @@ -2,7 +2,7 @@ include librephotos.env DOCKER_TAG ?= ownphotos-backend -REPLACE_NAMES=sed 's/__backend_name__/$(BACKEND_CONT_NAME)/g; s/__frontend_name__/$(FRONTEND_CONT_NAME)/g; s/__proxy_name__/$(PROXY_CONT_NAME)/g; s/__redis_name__/$(REDIS_CONT_NAME)/g; s/__db_name__/$(DB_CONT_NAME)/g; s/__pgadmin_name__/$(PGADMIN_CONT_NAME)/g' +REPLACE_NAMES=sed 's/__backend_name__/$(BACKEND_CONT_NAME)/g; s/__frontend_name__/$(FRONTEND_CONT_NAME)/g; s/__proxy_name__/$(PROXY_CONT_NAME)/g; s/__redis_name__/$(REDIS_CONT_NAME)/g; s/__db_name__/$(DB_CONT_NAME)/g; s/__pgadmin_name__/$(PGADMIN_CONT_NAME)/g; s/__network_name__/$(NETWORK_NAME)/g' default: build diff --git a/docker-compose.dev.raw b/docker-compose.dev.raw index 35d99ade46fc3a1f6bdb81d4651fc051ea4ab6be..df8e619da483fe164b1205e9c5350d4dfce7a230 100644 --- a/docker-compose.dev.raw +++ b/docker-compose.dev.raw @@ -21,6 +21,7 @@ services: build: context: ./proxy dockerfile: Dockerfile + container_name: __proxy_name__ volumes: - ${myPhotos}:/data - ${proMedia}:/protected_media @@ -30,9 +31,11 @@ services: tty: true environment: - DEBUG=1 + - WDS_SOCKET_PORT=0 # needed for webpack-dev-server build: context: ./frontend dockerfile: Dockerfile.dev + container_name: __frontend_name__ volumes: - ${codedir}/librephotos-frontend:/usr/src/app @@ -46,6 +49,7 @@ services: dockerfile: Dockerfile args: DEBUG: 1 + container_name: __backend_name__ volumes: - ${myPhotos}:/data - ${proMedia}:/protected_media @@ -59,11 +63,12 @@ services: __pgadmin_name__: image: dpage/pgadmin4 + container_name: __pgadmin_name__ environment: PGADMIN_DEFAULT_EMAIL: ${PGADMIN_DEFAULT_EMAIL:-admin@admin.com} PGADMIN_DEFAULT_PASSWORD: ${PGADMIN_DEFAULT_PASSWORD:-admin} volumes: - - $HOME/pgadmin:/root/.pgadmin + - ${pgAdminLocation}/pgadmin:/root/.pgadmin ports: - "3001:80" restart: unless-stopped diff --git a/docker-compose.dev.yml b/docker-compose.dev.yml index b30ac351eb4be2ba086c4278b80a777ae8d1084b..9b6a71d0d1089c7c61bdda2da76eeadf09bcb64c 100644 --- a/docker-compose.dev.yml +++ b/docker-compose.dev.yml @@ -21,6 +21,7 @@ services: build: context: ./proxy dockerfile: Dockerfile + container_name: proxy volumes: - ${myPhotos}:/data - ${proMedia}:/protected_media @@ -34,6 +35,7 @@ services: build: context: ./frontend dockerfile: Dockerfile.dev + container_name: frontend volumes: - ${codedir}/librephotos-frontend:/usr/src/app @@ -47,6 +49,7 @@ services: dockerfile: Dockerfile args: DEBUG: 1 + container_name: backend volumes: - ${myPhotos}:/data - ${proMedia}:/protected_media @@ -60,11 +63,12 @@ services: pgadmin: image: dpage/pgadmin4 + container_name: pgadmin environment: PGADMIN_DEFAULT_EMAIL: ${PGADMIN_DEFAULT_EMAIL:-admin@admin.com} PGADMIN_DEFAULT_PASSWORD: ${PGADMIN_DEFAULT_PASSWORD:-admin} volumes: - - $HOME/pgadmin:/root/.pgadmin + - ${pgAdminLocation}/pgadmin:/root/.pgadmin ports: - "3001:80" restart: unless-stopped diff --git a/docker-compose.raw b/docker-compose.raw index 3ca8c63e5cf730f642e15a3c0756a70ffd6bc6eb..ba345930d971e2de9b978ae5cdcc0cd5c47425b4 100644 --- a/docker-compose.raw +++ b/docker-compose.raw @@ -11,6 +11,7 @@ version: "3.8" services: __proxy_name__: image: reallibrephotos/librephotos-proxy:${tag} + container_name: __proxy_name__ restart: unless-stopped volumes: - ${myPhotos}:/data @@ -24,6 +25,7 @@ services: __db_name__: image: postgres:13 + container_name: __db_name__ restart: unless-stopped environment: - POSTGRES_USER=${dbUser} @@ -35,12 +37,14 @@ services: __frontend_name__: image: reallibrephotos/librephotos-frontend:${tag} + container_name: __frontend_name__ restart: unless-stopped depends_on: - __backend_name__ __backend_name__: image: reallibrephotos/librephotos:${tag} + container_name: __backend_name__ restart: unless-stopped volumes: - ${myPhotos}:/data @@ -75,4 +79,5 @@ services: __redis_name__: image: redis:6 + container_name: __redis_name__ restart: unless-stopped diff --git a/docker-compose.yml b/docker-compose.yml index 5fb8b486a387c06b3587f1c06cb2a6d341c69639..91eada5fd0fa3752e043b669ff86bcbf165840a7 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -11,10 +11,12 @@ version: "3.8" services: proxy: image: reallibrephotos/librephotos-proxy:${tag} + container_name: proxy restart: unless-stopped volumes: - ${myPhotos}:/data - ${proMedia}:/protected_media + - ./proxy/nginx.conf:/etc/nginx/nginx.conf:ro ports: - ${httpPort}:80 depends_on: @@ -23,6 +25,7 @@ services: db: image: postgres:13 + container_name: db restart: unless-stopped environment: - POSTGRES_USER=${dbUser} @@ -34,12 +37,14 @@ services: frontend: image: reallibrephotos/librephotos-frontend:${tag} + container_name: frontend restart: unless-stopped depends_on: - backend backend: image: reallibrephotos/librephotos:${tag} + container_name: backend restart: unless-stopped volumes: - ${myPhotos}:/data @@ -74,4 +79,5 @@ services: redis: image: redis:6 + container_name: redis restart: unless-stopped diff --git a/librephotos.env b/librephotos.env index 6b0d53030b725b6dd2058b3d4bb2a20f63792772..44505b2cb9883588372fba197350f22a6df346f9 100644 --- a/librephotos.env +++ b/librephotos.env @@ -42,7 +42,6 @@ shhhhKey=D2VymuMn2gAhx4tmAawd #What port should Libre Photos be accessed at (Default 3000) httpPort=3000 - # ------------------------------------------------------------------------------------------------ # Wow, we are at the optional now. Pretty easy so far. You do not have to change any of the below. @@ -86,11 +85,20 @@ FRONTEND_CONT_NAME=frontend PROXY_CONT_NAME=proxy REDIS_CONT_NAME=redis PGADMIN_CONT_NAME=pgadmin +NETWORK_NAME=libre-photos-net # --------------------------------------------------------------------------------------------- # If you are not a developer ignore the following parameters: you will never need them. -# Where shall we store the backend and frontend code files. +# Where shall we store the backend and frontend code files. codedir=./librephotos/code +# Location for pgAdmin +pgAdminLocation=./librephotos/pgadmin + +# Which subnet should the docker network use +subnet=172.19.0.0/16 + +# On which Gateway should the proxy container be accessible +gateway=172.19.0.1 \ No newline at end of file diff --git a/proxy/nginx.conf b/proxy/nginx.conf index 79ff37aedd063edf4b5200b234983f977b37a9e3..e4fdc65f2f93c41cdda564deb57a36bee842c249 100644 --- a/proxy/nginx.conf +++ b/proxy/nginx.conf @@ -28,12 +28,11 @@ http { } # needed for webpack-dev-server location /ws { - proxy_pass http://frontend:3000; - proxy_http_version 1.1; - proxy_set_header Upgrade $http_upgrade; - proxy_set_header Connection "upgrade"; + proxy_pass http://frontend:3000; + proxy_http_version 1.1; + proxy_set_header Upgrade $http_upgrade; + proxy_set_header Connection "upgrade"; } - # Django media location /protected_media { internal; diff --git a/proxy/nginx.raw b/proxy/nginx.raw index 291d8315cd3ff4f750c4d76e70386d81b6381abc..aff6cb1fa220b14e423031d2f0a4adeff7a20192 100644 --- a/proxy/nginx.raw +++ b/proxy/nginx.raw @@ -26,6 +26,13 @@ http { include uwsgi_params; proxy_pass http://__backend_name__:8001; } + # needed for webpack-dev-server + location /ws { + proxy_pass http://__frontend_name__:3000; + proxy_http_version 1.1; + proxy_set_header Upgrade $http_upgrade; + proxy_set_header Connection "upgrade"; + } # Django media location /protected_media { internal;