docker services我的理解是单docker服务上发一个服务的集群

以httpd服务为例
获取httpd镜像

docker pull httpd

将该镜像传到本地镜像仓库(主要是为了能够方便,不传也没问题)
关于搭建docker本地镜像仓库请看:搭建docker本地镜像仓库

docker tag httpd repository:5000/httpd
docker push repository:5000/httpd

查看本地镜像仓库

curl -4 http://repository:5000/v2/_catalog

创建docker-compose.yml文件
vim docker-compose.yml

version: "3"
services:
web:
#replace username/repo:tag with your name and image details
image: repository:5000/httpd:latest
deploy:
replicas: 5
resources:
limits:
cpus: "0.1"
memory: 50M
restart_policy:
condition: on-failure
ports:

  • "80:80"
    networks:
  • webnet
    networks:
    webnet:

这个博客会启动调整空格,导致格式错误,请看下图调整
docker-6-docker services
详细信息请看docker-compose配置详解

初始化swarm

docker swarm init

docker-6-docker services
下面的那些提示消息是构建docker服务器集群时使用的,先不用管。

构建docker stack,名字叫httpd
对于docker stack我的理解是docker 容器集群

docker stack deploy -c docker-compose.yml httpd

查看docker stack

docker stack ls

docker-6-docker services
查看docker container

docker ps -a

docker-6-docker services
访问测试
docker-6-docker services

docker service 命令浅析

docker service 用于在docker swarm中创建app集群,负载均衡基于轮询
docker-6-docker services
create 用于创建service
inspect 显示service详细信息
logs 查看service日志
ls 查看service列表
ps 显示service中applic列表
rm删除service
rollback 回滚一个service的配置
scale
update 更新service

docker service create --help查看选项,update需要在create之后。

docker service create \
--name test_swarm \
--replicas 4 \
--network test_httpd_webnet \
-p 80:80 \
--mount source=test_swarm,target=/usr/local/apache2/test
httpd

转载于:https://blog.51cto.com/13323775/2055602

相关文章:

  • 2021-05-27
  • 2021-08-07
  • 2021-09-23
  • 2021-12-14
  • 2022-12-23
  • 2021-12-23
  • 2022-12-23
猜你喜欢
  • 2021-11-27
  • 2021-08-04
  • 2022-12-23
  • 2021-03-31
  • 2021-10-13
  • 2021-12-20
  • 2021-08-08
相关资源
相似解决方案