You've already forked immich
							
							
				mirror of
				https://github.com/immich-app/immich.git
				synced 2025-10-31 00:18:28 +02:00 
			
		
		
		
	chore: docker compose for prod build (#3333)
* added docker compose for prod build * updated makefile
This commit is contained in:
		
							
								
								
									
										4
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										4
									
								
								Makefile
									
									
									
									
									
								
							| @@ -23,10 +23,10 @@ test-e2e: | ||||
| 	docker-compose -f ./docker/docker-compose.test.yml --env-file ./docker/.env.test -p immich-test-e2e up  --renew-anon-volumes --abort-on-container-exit --exit-code-from immich-server-test --remove-orphans --build | ||||
|  | ||||
| prod: | ||||
| 	docker-compose -f ./docker/docker-compose.yml up --build -V --remove-orphans | ||||
| 	docker-compose -f ./docker/docker-compose.prod.yml up --build -V --remove-orphans | ||||
|  | ||||
| prod-scale: | ||||
| 	docker-compose -f ./docker/docker-compose.yml up --build -V --scale immich-server=3 --scale immich-microservices=3 --remove-orphans | ||||
| 	docker-compose -f ./docker/docker-compose.prod.yml up --build -V --scale immich-server=3 --scale immich-microservices=3 --remove-orphans | ||||
|  | ||||
| api: | ||||
| 	cd ./server && npm run api:generate | ||||
|   | ||||
							
								
								
									
										114
									
								
								docker/docker-compose.prod.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										114
									
								
								docker/docker-compose.prod.yml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,114 @@ | ||||
| version: "3.8" | ||||
|  | ||||
| services: | ||||
|   immich-server: | ||||
|     container_name: immich_server | ||||
|     image: immich-server:latest | ||||
|     build: | ||||
|       context: ../server | ||||
|       dockerfile: Dockerfile | ||||
|     command: ["./start-server.sh"] | ||||
|     volumes: | ||||
|       - ${UPLOAD_LOCATION}:/usr/src/app/upload | ||||
|     env_file: | ||||
|       - .env | ||||
|     depends_on: | ||||
|       - redis | ||||
|       - database | ||||
|       - typesense | ||||
|  | ||||
|   immich-machine-learning: | ||||
|     container_name: immich_machine_learning | ||||
|     image: immich-machine-learning:latest | ||||
|     build: | ||||
|       context: ../machine-learning | ||||
|       dockerfile: Dockerfile | ||||
|     volumes: | ||||
|       - ${UPLOAD_LOCATION}:/usr/src/app/upload | ||||
|       - model-cache:/cache | ||||
|     env_file: | ||||
|       - .env | ||||
|     restart: always | ||||
|    | ||||
|   immich-microservices: | ||||
|     container_name: immich_microservices | ||||
|     image: immich-microservices:latest | ||||
|     build: | ||||
|       context: ../server | ||||
|       dockerfile: Dockerfile | ||||
|     command: ["./start-microservices.sh"] | ||||
|     volumes: | ||||
|       - ${UPLOAD_LOCATION}:/usr/src/app/upload | ||||
|     env_file: | ||||
|       - .env | ||||
|     depends_on: | ||||
|       - database | ||||
|       - immich-server | ||||
|       - typesense | ||||
|     restart: always | ||||
|  | ||||
|   immich-web: | ||||
|     container_name: immich_web | ||||
|     image: immich-web:latest | ||||
|     build: | ||||
|       context: ../web | ||||
|       dockerfile: Dockerfile | ||||
|     env_file: | ||||
|       - .env | ||||
|     restart: always | ||||
|     depends_on: | ||||
|       - immich-server | ||||
|  | ||||
|   typesense: | ||||
|     container_name: immich_typesense | ||||
|     image: typesense/typesense:0.24.1@sha256:9bcff2b829f12074426ca044b56160ca9d777a0c488303469143dd9f8259d4dd | ||||
|     environment: | ||||
|       - TYPESENSE_API_KEY=${TYPESENSE_API_KEY} | ||||
|       - TYPESENSE_DATA_DIR=/data | ||||
|     logging: | ||||
|       driver: none | ||||
|     volumes: | ||||
|       - tsdata:/data | ||||
|     restart: always | ||||
|  | ||||
|   redis: | ||||
|     container_name: immich_redis | ||||
|     image: redis:6.2-alpine@sha256:70a7a5b641117670beae0d80658430853896b5ef269ccf00d1827427e3263fa3 | ||||
|     restart: always | ||||
|  | ||||
|   database: | ||||
|     container_name: immich_postgres | ||||
|     image: postgres:14-alpine@sha256:28407a9961e76f2d285dc6991e8e48893503cc3836a4755bbc2d40bcc272a441 | ||||
|     env_file: | ||||
|       - .env | ||||
|     environment: | ||||
|       POSTGRES_PASSWORD: ${DB_PASSWORD} | ||||
|       POSTGRES_USER: ${DB_USERNAME} | ||||
|       POSTGRES_DB: ${DB_DATABASE_NAME} | ||||
|       PG_DATA: /var/lib/postgresql/data | ||||
|     volumes: | ||||
|       - pgdata:/var/lib/postgresql/data | ||||
|     restart: always | ||||
|  | ||||
|   immich-proxy: | ||||
|     container_name: immich_proxy | ||||
|     image: immich-proxy:latest | ||||
|     environment: | ||||
|       # Make sure these values get passed through from the env file | ||||
|       - IMMICH_SERVER_URL | ||||
|       - IMMICH_WEB_URL | ||||
|     build: | ||||
|       context: ../nginx | ||||
|       dockerfile: Dockerfile | ||||
|     ports: | ||||
|       - 2283:8080 | ||||
|     logging: | ||||
|       driver: none | ||||
|     depends_on: | ||||
|       - immich-server | ||||
|     restart: always | ||||
|  | ||||
| volumes: | ||||
|   pgdata: | ||||
|   model-cache: | ||||
|   tsdata: | ||||
		Reference in New Issue
	
	Block a user