quadlet added
This commit is contained in:
		
							parent
							
								
									534077bad3
								
							
						
					
					
						commit
						73f65e00ba
					
				
					 3 changed files with 38 additions and 16 deletions
				
			
		
							
								
								
									
										19
									
								
								Dockerfile
									
										
									
									
									
								
							
							
						
						
									
										19
									
								
								Dockerfile
									
										
									
									
									
								
							|  | @ -1,17 +1,12 @@ | |||
| FROM docker.io/golang:1.22 as builder | ||||
| 
 | ||||
| WORKDIR /app | ||||
| WORKDIR /usr/src/app | ||||
| 
 | ||||
| COPY . ./ | ||||
| RUN go mod download | ||||
| COPY go.mod go.sum ./ | ||||
| RUN go mod download && go mod verify | ||||
| 
 | ||||
| RUN CGO_ENABLED=0 GOOS=linux go build -o /sanic | ||||
| 
 | ||||
| # ----- | ||||
| 
 | ||||
| FROM builder AS tester | ||||
| 
 | ||||
| RUN go test -v ./... | ||||
| COPY . . | ||||
| RUN CGO_ENABLED=0 GOOS=linux go build -v -o sanic ./... | ||||
| 
 | ||||
| # ----- | ||||
| 
 | ||||
|  | @ -19,8 +14,8 @@ FROM scratch as runner | |||
| 
 | ||||
| WORKDIR / | ||||
| 
 | ||||
| COPY --from=builder /sanic /sanic | ||||
| COPY --from=builder /app/static /static | ||||
| COPY --from=builder /usr/src/app/sanic /sanic | ||||
| COPY --from=builder /usr/src/app/static /static | ||||
| 
 | ||||
| EXPOSE 8080 | ||||
| 
 | ||||
|  |  | |||
|  | @ -56,12 +56,12 @@ Install from the AUR: | |||
| yay -S sanic | ||||
| ``` | ||||
| 
 | ||||
| ### Podman | ||||
| ### 🐳 Container | ||||
| 
 | ||||
| Run as daemon: | ||||
| 
 | ||||
| ```shell | ||||
| podman run -d -v ./config.ini:/config.ini -p 8443:8443 registry.gitlab.com/XenGi/sanic:latest | ||||
| podman run -d -v ./config.ini:/config.ini -p 8080:8080 registry.gitlab.com/XenGi/sanic:latest | ||||
| ``` | ||||
| 
 | ||||
| ## 🛠️ Development | ||||
|  | @ -70,7 +70,7 @@ sanic is developed using [Nix][nix], but you can also just use the usual Golang | |||
| 
 | ||||
| Run local [MPD][mpd] instance for testing with `make mpd`. | ||||
| 
 | ||||
| Update go depdendencies like this: | ||||
| Update go dependencies like this: | ||||
| 
 | ||||
| ```shell | ||||
| go get -u  # or `make update` | ||||
|  | @ -94,7 +94,7 @@ nix build | |||
| 
 | ||||
| ### 🐧 w/o Nix | ||||
| 
 | ||||
| Use these Make targets for convenience: | ||||
| Use these Make targets for your convenience: | ||||
| 
 | ||||
| - `run`: Run project | ||||
| - `build`: Compile project | ||||
|  |  | |||
							
								
								
									
										27
									
								
								sanic.container
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								sanic.container
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,27 @@ | |||
| [Unit] | ||||
| Description=sanic - chaos music control | ||||
| 
 | ||||
| [Container] | ||||
| AutoUpdate=registry | ||||
| ContainerName=sanic | ||||
| Group=sanic | ||||
| HealthCmd=/usr/bin/curl localhost:8080/echo | ||||
| HealthInterval=2m | ||||
| HealthOnFailure=restart | ||||
| HealthRetries=5 | ||||
| HealthStartPeriod=1m | ||||
| Image=registry.gitlab.com/xengi/sanic/sanic:latest | ||||
| LogDriver=journald | ||||
| Network=host | ||||
| NoNewPrivileges=true | ||||
| PublishPort=8080 | ||||
| Pull=always | ||||
| User=sanic | ||||
| Volume=/etc/sanic/config.ini:/config.ini | ||||
| 
 | ||||
| [Service} | ||||
| Restart=always | ||||
| 
 | ||||
| [Install] | ||||
| WantedBy=default.target | ||||
| 
 | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue