mirror of
				https://github.com/dani-garcia/vaultwarden.git
				synced 2025-10-31 13:51:14 +00:00 
			
		
		
		
	Allow listening on privileged ports (below 1024) as non-root
This is done by running `setcap cap_net_bind_service=+ep` on the executable in the build stage (doing it in the runtime stage creates an extra copy of the executable that bloats the image). This only works when using the BuildKit-based builder, since the `COPY` instruction doesn't copy capabilities on the legacy builder.
This commit is contained in:
		
					parent
					
						
							
								686474f815
							
						
					
				
			
			
				commit
				
					
						a2162f4d69
					
				
			
		
					 17 changed files with 163 additions and 156 deletions
				
			
		|  | @ -29,8 +29,6 @@ FROM vaultwarden/web-vault@sha256:d5f71fb05c4b87935bf51d84140db0f8716cabfe2974fb | |||
| ########################## BUILD IMAGE  ########################## | ||||
| FROM blackdex/rust-musl:x86_64-musl-stable-1.66.1 as build | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| # Build time options to avoid dpkg warnings and help with reproducible builds. | ||||
| ENV DEBIAN_FRONTEND=noninteractive \ | ||||
|     LANG=C.UTF-8 \ | ||||
|  | @ -39,7 +37,6 @@ ENV DEBIAN_FRONTEND=noninteractive \ | |||
|     CARGO_HOME="/root/.cargo" \ | ||||
|     USER="root" | ||||
| 
 | ||||
| 
 | ||||
| # Create CARGO_HOME folder and don't download rust docs | ||||
| RUN mkdir -pv "${CARGO_HOME}" \ | ||||
|     && rustup set profile minimal | ||||
|  | @ -77,6 +74,7 @@ RUN touch src/main.rs | |||
| # your actual source files being built | ||||
| RUN cargo build --features ${DB} --release --target=x86_64-unknown-linux-musl | ||||
| 
 | ||||
| 
 | ||||
| ######################## RUNTIME IMAGE  ######################## | ||||
| # Create a new stage with a minimal image | ||||
| # because we already have a binary built | ||||
|  | @ -92,10 +90,10 @@ ENV ROCKET_PROFILE="release" \ | |||
| # Create data folder and Install needed libraries | ||||
| RUN mkdir /data \ | ||||
|     && apk add --no-cache \ | ||||
|         openssl \ | ||||
|         tzdata \ | ||||
|         ca-certificates \ | ||||
|         curl \ | ||||
|         ca-certificates | ||||
|         openssl \ | ||||
|         tzdata | ||||
| 
 | ||||
| 
 | ||||
| VOLUME /data | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue