docker: Make sure that we properly check for containers.

master
Harshavardhana 9 years ago
parent 1c33926239
commit 354229732b
  1. 2
      Makefile
  2. 4
      runtime-checks.go

@ -138,7 +138,7 @@ install: gomake-all
dockerimage: checkdocker verifiers $(UI_ASSETS)
@echo "Building docker image:" minio:$(TAG)
@GO15VENDOREXPERIMENT=1 go build --ldflags $(DOCKER_LDFLAGS) -o minio.dockerimage
@GO15VENDOREXPERIMENT=1 GOOS=linux GOARCH=amd64 go build --ldflags $(DOCKER_LDFLAGS) -o minio.dockerimage
@mkdir -p export
@sudo docker build --rm --tag=minio/minio:$(TAG) .
@rmdir export

@ -29,12 +29,12 @@ import (
// isContainerized returns true if we are inside a containerized environment.
func isContainerized() bool {
// Docker containers contain ".dockerinit" at its root path.
if _, e := os.Stat("/.dockerinit"); os.IsNotExist(e) {
if _, e := os.Stat("/.dockerinit"); e == nil {
return true
}
// Check if cgroup policies for init process contains docker string.
if cgroupData, e := ioutil.ReadFile("/proc/1/cgroup"); e != nil {
if cgroupData, e := ioutil.ReadFile("/proc/1/cgroup"); e == nil {
if strings.Contains(string(cgroupData), "/docker-") {
return true
}

Loading…
Cancel
Save