fix(endpoints): show line breaks in edge run commands (#3794)

pull/3796/head
Chaim Lev-Ari 2020-05-06 08:45:17 +03:00 committed by GitHub
parent bfd6cca33f
commit 7fa73d1147
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 42 additions and 12 deletions

View File

@ -36,20 +36,10 @@
<div style="margin-top: 10px;">
<uib-tabset active="state.deploymentTab">
<uib-tab index="0" heading="Standalone">
<code style="display: block; white-space: pre-wrap;">
docker run -d -v /var/run/docker.sock:/var/run/docker.sock \ -v /var/lib/docker/volumes:/var/lib/docker/volumes \ -v /:/host \ --restart always \ -e EDGE=1 \ -e
EDGE_ID={{ randomEdgeID }} \ -e EDGE_KEY={{ endpoint.EdgeKey }} \ -e CAP_HOST_MANAGEMENT=1 \ -v portainer_agent_data:/data \ --name portainer_edge_agent \
portainer/agent
</code>
<code style="display: block; white-space: pre-wrap; padding: 16px 90px;">{{dockerCommands.standalone}}</code>
</uib-tab>
<uib-tab index="1" heading="Swarm">
<code style="display: block; white-space: pre-wrap;">
docker network create \ --driver overlay \ portainer_agent_network; docker service create \ --name portainer_edge_agent \ --network portainer_agent_network \ -e
AGENT_CLUSTER_ADDR=tasks.portainer_edge_agent \ -e EDGE=1 \ -e EDGE_ID={{ randomEdgeID }} \ -e EDGE_KEY={{ endpoint.EdgeKey }} \ -e CAP_HOST_MANAGEMENT=1 \ --mode
global \ --constraint 'node.platform.os == linux' \ --mount type=bind,src=//var/run/docker.sock,dst=/var/run/docker.sock \ --mount
type=bind,src=//var/lib/docker/volumes,dst=/var/lib/docker/volumes \ --mount type=bind,src=//,dst=/host \ --mount type=volume,src=portainer_agent_data,dst=/data \
portainer/agent
</code>
<code style="display: block; white-space: pre-wrap; padding: 16px 90px;">{{dockerCommands.swarm}}</code>
</uib-tab>
</uib-tabset>
<div style="margin-top: 10px;">

View File

@ -152,6 +152,10 @@ angular
if (endpoint.Type === 4) {
$scope.edgeKeyDetails = decodeEdgeKey(endpoint.EdgeKey);
$scope.randomEdgeID = uuidv4();
$scope.dockerCommands = {
standalone: buildStandaloneCommand($scope.randomEdgeID, endpoint.EdgeKey),
swarm: buildSwarmCommand($scope.randomEdgeID, endpoint.EdgeKey),
};
}
$scope.endpoint = endpoint;
$scope.groups = data.groups;
@ -162,5 +166,41 @@ angular
});
}
function buildStandaloneCommand(edgeId, edgeKey) {
return `docker run -d -v /var/run/docker.sock:/var/run/docker.sock \\
-v /var/lib/docker/volumes:/var/lib/docker/volumes \\
-v /:/host \\
--restart always \\
-e EDGE=1 \\
-e EDGE_ID=${edgeId} \\
-e EDGE_KEY=${edgeKey} \\
-e CAP_HOST_MANAGEMENT=1 \\
-v portainer_agent_data:/data \\
--name portainer_edge_agent \\
portainer/agent`;
}
function buildSwarmCommand(edgeId, edgeKey) {
return `docker network create \\
--driver overlay \\
portainer_agent_network;
docker service create \\
--name portainer_edge_agent \\
--network portainer_agent_network \\
-e AGENT_CLUSTER_ADDR=tasks.portainer_edge_agent \\
-e EDGE=1 \\
-e EDGE_ID=${edgeId} \\
-e EDGE_KEY=${edgeKey} \\
-e CAP_HOST_MANAGEMENT=1 \\
--mode global \\
--constraint 'node.platform.os == linux' \\
--mount type=bind,src=//var/run/docker.sock,dst=/var/run/docker.sock \\
--mount type=bind,src=//var/lib/docker/volumes,dst=/var/lib/docker/volumes \\
--mount type=bind,src=//,dst=/host \\
--mount type=volume,src=portainer_agent_data,dst=/data \\
portainer/agent`;
}
initView();
});