mirror of
				https://github.com/linuxkit/linuxkit.git
				synced 2025-10-31 03:40:16 +00:00 
			
		
		
		
	Some hypervisors (e.g. hyperkit / xhyve) don't provide a good way to keep the VM's clock in sync with the Host's clock. NTP will usually keep the clocks together, but after a the host or VM is suspended and resumed the clocks can be suddenly too far apart for NTP to work properly. This simple daemon listens on an AF_VSOCK port and resynchronises the VM clock from the virtualised hardware clock. This is a Go conversion of original C code written by Magnus Skjegstad <magnus@skjegstad.com> Signed-off-by: David Scott <dave.scott@docker.com>
		
			
				
	
	
		
			23 lines
		
	
	
		
			776 B
		
	
	
	
		
			Docker
		
	
	
	
	
	
			
		
		
	
	
			23 lines
		
	
	
		
			776 B
		
	
	
	
		
			Docker
		
	
	
	
	
	
| FROM linuxkit/alpine:2e362f4459ba4491655061cccdd2fcc7a2de5eb3 AS mirror
 | |
| 
 | |
| RUN apk add --no-cache go musl-dev git
 | |
| ENV GOPATH=/go PATH=$PATH:/go/bin
 | |
| 
 | |
| ENV VIRTSOCK_COMMIT=a381dcc5bcddf1d7f449495c373dbf70f8e501c0
 | |
| RUN mkdir -p $GOPATH/src/github.com/linuxkit && \
 | |
|   cd $GOPATH/src/github.com/linuxkit && \
 | |
|   git clone https://github.com/linuxkit/virtsock.git && \
 | |
|   cd virtsock && \
 | |
|   git checkout $VIRTSOCK_COMMIT
 | |
| 
 | |
| COPY .  /go/src/host-timesync-daemon
 | |
| RUN go-compile.sh /go/src/host-timesync-daemon
 | |
| 
 | |
| FROM scratch
 | |
| ENTRYPOINT []
 | |
| CMD []
 | |
| WORKDIR /
 | |
| COPY --from=mirror /go/bin/host-timesync-daemon /usr/bin/host-timesync-daemon
 | |
| CMD ["/usr/bin/host-timesync-daemon", "-port", "0xf3a4"]
 | |
| LABEL org.mobyproject.config='{"binds": [ "/dev/rtc0:/dev/rtc0" ], "capabilities": ["CAP_SYS_TIME"]}'
 |