mirror of https://github.com/docker/docs.git
Merge pull request #224 from kitematic/regen-certs
Regenerate certificates on startup, fix permissions bug
This commit is contained in:
commit
615206af1a
|
@ -77,15 +77,18 @@ describe('SetupStore', function () {
|
||||||
machine.isoversion.mockReturnValue('1.0');
|
machine.isoversion.mockReturnValue('1.0');
|
||||||
machine.stop.mockReturnValue(Promise.resolve());
|
machine.stop.mockReturnValue(Promise.resolve());
|
||||||
machine.start.mockReturnValue(Promise.resolve());
|
machine.start.mockReturnValue(Promise.resolve());
|
||||||
|
machine.regenerateCerts.mockReturnValue(Promise.resolve());
|
||||||
machine.upgrade.mockReturnValue(Promise.resolve());
|
machine.upgrade.mockReturnValue(Promise.resolve());
|
||||||
setupUtil.compareVersions.mockReturnValue(-1);
|
setupUtil.compareVersions.mockReturnValue(-1);
|
||||||
machine.create.mockClear();
|
machine.create.mockClear();
|
||||||
machine.upgrade.mockClear();
|
machine.upgrade.mockClear();
|
||||||
machine.stop.mockClear();
|
machine.stop.mockClear();
|
||||||
machine.start.mockClear();
|
machine.start.mockClear();
|
||||||
|
machine.regenerateCerts.mockClear();
|
||||||
return setupStore.steps().init.run(() => {}).then(() => {
|
return setupStore.steps().init.run(() => {}).then(() => {
|
||||||
expect(machine.create).not.toBeCalled();
|
expect(machine.create).not.toBeCalled();
|
||||||
expect(machine.stop).toBeCalled();
|
expect(machine.stop).toBeCalled();
|
||||||
|
expect(machine.regenerateCerts).toBeCalled();
|
||||||
expect(machine.start).toBeCalled();
|
expect(machine.start).toBeCalled();
|
||||||
expect(machine.upgrade).toBeCalled();
|
expect(machine.upgrade).toBeCalled();
|
||||||
});
|
});
|
||||||
|
|
|
@ -40,7 +40,7 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"docker-version": "1.5.0",
|
"docker-version": "1.5.0",
|
||||||
"docker-machine-version": "0.1.0",
|
"docker-machine-version": "0.1.0-kitematic-0.5.8",
|
||||||
"atom-shell-version": "0.21.2",
|
"atom-shell-version": "0.21.2",
|
||||||
"virtualbox-version": "4.3.24",
|
"virtualbox-version": "4.3.24",
|
||||||
"virtualbox-filename": "VirtualBox-4.3.24.pkg",
|
"virtualbox-filename": "VirtualBox-4.3.24.pkg",
|
||||||
|
|
|
@ -83,6 +83,9 @@ var DockerMachine = {
|
||||||
return Promise.resolve(stdout.trim().replace('\n', ''));
|
return Promise.resolve(stdout.trim().replace('\n', ''));
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
regenerateCerts: function () {
|
||||||
|
return util.exec([DockerMachine.command(), 'tls-regenerate-certs', '-f', NAME]);
|
||||||
|
},
|
||||||
state: function () {
|
state: function () {
|
||||||
return DockerMachine.info().then(info => {
|
return DockerMachine.info().then(info => {
|
||||||
return info ? info.state : null;
|
return info ? info.state : null;
|
||||||
|
|
|
@ -61,7 +61,7 @@ var _steps = [{
|
||||||
message: 'To run Docker containers on your computer, Kitematic is starting a Linux virtual machine. This may take a minute...',
|
message: 'To run Docker containers on your computer, Kitematic is starting a Linux virtual machine. This may take a minute...',
|
||||||
totalPercent: 60,
|
totalPercent: 60,
|
||||||
percent: 0,
|
percent: 0,
|
||||||
seconds: 53,
|
seconds: 58,
|
||||||
run: Promise.coroutine(function* (progressCallback) {
|
run: Promise.coroutine(function* (progressCallback) {
|
||||||
setupUtil.simulateProgress(this.seconds, progressCallback);
|
setupUtil.simulateProgress(this.seconds, progressCallback);
|
||||||
yield virtualBox.vmdestroy('kitematic-vm');
|
yield virtualBox.vmdestroy('kitematic-vm');
|
||||||
|
@ -86,6 +86,7 @@ var _steps = [{
|
||||||
yield machine.upgrade();
|
yield machine.upgrade();
|
||||||
}
|
}
|
||||||
yield machine.start();
|
yield machine.start();
|
||||||
|
yield machine.regenerateCerts();
|
||||||
})
|
})
|
||||||
}];
|
}];
|
||||||
|
|
||||||
|
|
|
@ -13,15 +13,15 @@ var SetupUtil = {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!fs.existsSync('/usr/local/bin/docker') || !fs.existsSync('/usr/local/bin/docker-machine')) {
|
if (fs.statSync('/usr/local/bin').gid !== 80 || fs.statSync('/usr/local/bin').uid !== process.getuid()) {
|
||||||
return fs.statSync('/usr/local/bin').gid !== 80 || fs.statSync('/usr/local/bin').uid !== process.getuid();
|
|
||||||
}
|
|
||||||
|
|
||||||
if (fs.statSync('/usr/local/bin/docker').gid !== 80 || fs.statSync('/usr/local/bin/docker').uid !== process.getuid()) {
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (fs.statSync('/usr/local/bin/docker-machine').gid !== 80 || fs.statSync('/usr/local/bin/docker-machine').uid !== process.getuid()) {
|
if (fs.existsSync('/usr/local/bin/docker') && (fs.statSync('/usr/local/bin/docker').gid !== 80 || fs.statSync('/usr/local/bin/docker').uid !== process.getuid())) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (fs.existsSync('/usr/local/bin/docker-machine') && (fs.statSync('/usr/local/bin/docker-machine').gid !== 80 || fs.statSync('/usr/local/bin/docker-machine').uid !== process.getuid())) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
|
@ -50,9 +50,11 @@ var SetupUtil = {
|
||||||
},
|
},
|
||||||
fixBinariesCmd: function () {
|
fixBinariesCmd: function () {
|
||||||
var cmd = [];
|
var cmd = [];
|
||||||
cmd.push.apply(cmd, ['chown', `${process.getuid()}:${80}`, this.escapePath(path.join('/usr/local/bin', 'docker-machine'))]);
|
cmd.push.apply(cmd, ['chown', `${process.getuid()}:${80}`, path.join('/usr/local/bin')]);
|
||||||
cmd.push('&&');
|
cmd.push('&&');
|
||||||
cmd.push.apply(cmd, ['chown', `${process.getuid()}:${80}`, this.escapePath(path.join('/usr/local/bin', 'docker'))]);
|
cmd.push.apply(cmd, ['chown', `${process.getuid()}:${80}`, path.join('/usr/local/bin', 'docker-machine')]);
|
||||||
|
cmd.push('&&');
|
||||||
|
cmd.push.apply(cmd, ['chown', `${process.getuid()}:${80}`, path.join('/usr/local/bin', 'docker')]);
|
||||||
return cmd.join(' ');
|
return cmd.join(' ');
|
||||||
},
|
},
|
||||||
installVirtualBoxCmd: function () {
|
installVirtualBoxCmd: function () {
|
||||||
|
|
|
@ -11,7 +11,9 @@ pushd $BASE/resources > /dev/null
|
||||||
if [ ! -f $DOCKER_MACHINE_CLI_FILE ]; then
|
if [ ! -f $DOCKER_MACHINE_CLI_FILE ]; then
|
||||||
echo "-----> Downloading Docker Machine CLI..."
|
echo "-----> Downloading Docker Machine CLI..."
|
||||||
rm -rf docker-machine*
|
rm -rf docker-machine*
|
||||||
curl -L -o $DOCKER_MACHINE_CLI_FILE https://github.com/docker/machine/releases/download/v$DOCKER_MACHINE_CLI_VERSION/docker-machine_darwin-amd64
|
# Use temporary, new version of docker-machine that has some important fixes
|
||||||
|
# curl -L -o $DOCKER_MACHINE_CLI_FILE https://github.com/docker/machine/releases/download/v$DOCKER_MACHINE_CLI_VERSION/docker-machine_darwin-amd64
|
||||||
|
curl -L -o $DOCKER_MACHINE_CLI_FILE https://github.com/kitematic/kitematic/releases/download/v0.5.8/docker-machine_darwin-amd64
|
||||||
chmod +x $DOCKER_MACHINE_CLI_FILE
|
chmod +x $DOCKER_MACHINE_CLI_FILE
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue