Skip to content

Commit 8378d2a

Browse files
Add files via upload
1 parent ab320a6 commit 8378d2a

File tree

1 file changed

+67
-0
lines changed

1 file changed

+67
-0
lines changed

DockerService.txt

Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
Service
2+
--1
3+
docker run -it alpine ping 172.31.15.233
4+
docker service --help
5+
docker service create --name myservice -d alpine ping 172.31.15.233
6+
docker service inspect <<service name>> | less
7+
docker service logs <<service name>>
8+
9+
10+
--2
11+
docker service create --name myservice -d --replicas 4 alpine ping 172.31.15.233
12+
docker service ps myservice
13+
remove containers on one of the worker node and find the status of the service
14+
15+
--3
16+
docker service create \
17+
> --name=viz \
18+
> --publish=8080:8080/tcp \
19+
> --constraint=node.role==manager \
20+
> --mount=type=bind,src=/var/run/docker.sock,dst=/var/run/docker.sock \
21+
> dockersamples/visualizer
22+
23+
--4
24+
docker service scale myservice=2
25+
docker service scale myservice=5
26+
docker service rm myservice
27+
--5
28+
docker service --name webservice create -d -p 80:80 nginx
29+
now you can access it on any worker node
30+
--6
31+
docker service create --name webservice -d --mode=global --publish=80:80 nginx
32+
remove a woker node and check the visualizer
33+
add it again you will find the one replica is created on the worker node
34+
--7 labels and constraint
35+
36+
docker service create --name webservice -d --constraint="node.role==manager" --publish=80:80 nginx
37+
docker srevice scale webservice=2
38+
Check the visualizer
39+
docker service create --name webservice -d --constraint="node.role==worker" --publish 80:80 nginx
40+
41+
docker node update --label-add="webserver=true" worker01
42+
docker service create --name webservice -d --constraint="node.labels.webserver==true" --publish 80:80 nginx
43+
if we create same label to worker02 will the load shifted to worker 02 or not ans is not because you have to se the labels upfront
44+
45+
now create the labels on engine level
46+
47+
goto worker node2
48+
vi /etc/docker/daemon.json
49+
50+
{
51+
"labels": ["name=testserver"]
52+
}
53+
54+
create service on label server
55+
docker service create --name webservice1 -d --constraint="engine.labels.name==testserver" --publish 84:80 nginx
56+
57+
--8 node availbility
58+
docker node update --availability=pause worker02
59+
now the new containers will not be creating on worker02
60+
docker node update --availability=active worker02
61+
62+
docker node update --availability=drain worker02 # now the nodes are moved to other worker nodes or manager nodes
63+
64+
65+
~
66+
67+

0 commit comments

Comments
 (0)