20 lines
		
	
	
		
			542 B
		
	
	
	
		
			Docker
		
	
	
	
		
		
			
		
	
	
			20 lines
		
	
	
		
			542 B
		
	
	
	
		
			Docker
		
	
	
	
| 
								 | 
							
								FROM golang:1.22-alpine AS base
							 | 
						||
| 
								 | 
							
								WORKDIR /app
							 | 
						||
| 
								 | 
							
								COPY ./backend ./
							 | 
						||
| 
								 | 
							
								RUN go build -ldflags="-w -s" -o filebrowser .
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								FROM node:slim
							 | 
						||
| 
								 | 
							
								WORKDIR /app
							 | 
						||
| 
								 | 
							
								COPY ./frontend/package.json ./
							 | 
						||
| 
								 | 
							
								RUN npm i --maxsockets 1
							 | 
						||
| 
								 | 
							
								RUN npx playwright install --with-deps firefox
							 | 
						||
| 
								 | 
							
								COPY [ "backend/filebrowser.yaml", "./" ]
							 | 
						||
| 
								 | 
							
								COPY  ./frontend/ ./frontend
							 | 
						||
| 
								 | 
							
								WORKDIR /app/frontend
							 | 
						||
| 
								 | 
							
								RUN npm run build-docker
							 | 
						||
| 
								 | 
							
								WORKDIR /app
							 | 
						||
| 
								 | 
							
								COPY --from=base /app/filebrowser* ./
							 | 
						||
| 
								 | 
							
								RUN cp -R frontend/tests/ srv
							 | 
						||
| 
								 | 
							
								ENV FILEBROWSER_NO_EMBEDED="true"
							 | 
						||
| 
								 | 
							
								RUN ./filebrowser & sleep 2 && cd frontend && npx playwright test
							 |