底层实现
命令列表 基于centos7
名称 | 指令 | 详细 |
---|
开放HTTP的API | /lib/systemd/system/docker.service | ExecStart 参数后面加上 -H tcp://0.0.0.0:2375 |
刷新配置 | systemctl daemon-reload | |
查看完整的报错信息 | systemctl status docker -l | |
启动一个docker集群 | docker swarm init | –listen-addr 192.168.1.112:8888 –advertise-addr 192.168.1.112 |
查看集群情况 | docker node ls | 节点id后的星号据说表示的是你当前连接着的节点 |
构建服务 | docker service create –replicas 1 –name swarmtest tomcatssh:v1 | |
查看创建的服务 | docker service ls | docker service inspect –pretty swarmtest (详细信息) |
查看服务swarmtest在各个节点的运行情况 | docker service ps swarmtest |
服务伸缩 | docker service scale swarmtest=5 | |
删除所有节点的swarmtest服务 | docker service rm swarmtest | |
滚动更新 | docker service update –image tomcatssh:v2 swarmtest |
跳过错误 | docker service update后面的–update-failure-action |
节点管理 – 停止分配新任务 | docker node update –availability drain worker2 |
退出swarm集群 | docker swarm leave | |
查看服务日志 | docker service log nginx |
使用compose部署服务 | docker stack deploy | -c docker-compose.yml wordpress |
查看服务 | docker stack ls |
移除服务 | docker stack down |
敏感数据-创建secret | openssl rand -base64 20 | docker secret create mysql_password – |
查看secret | docker secret ls |
管理配置信息 | docker config create redis.conf redis.conf |
查看config | docker config ls |
创建MySQL服务
docker network create -d overlay
docker service create \
--name mysql \
--replicas 1 \
--network mysql_private \
--mount type=volumn, source=mydata, destination=/var/lib/mysql \
--secret source=mysql_root_password, target=mysql_root_password \
--secret source=mysql_password, target=mysql_password \
-e MYSQL_ROOT_PASSWORD_FILE='/run/secret/mysql_root_password' \
-e MYSQL_PASSWORD_FILE='/run/secrets/mysql_password' \
-e MYSQL_USER='wordpress' \
-e MYSQL_DATABASE='wordpress' \
mysql:latest
如果没有在target中显式指定路径,secret默认会通过tmpfs文件系统挂载到容器的/run/secrets目录中
创建redis服务
docker service create \
--name redis \
# --config source=redis.conf, target=/etc/redis.conf \
--config redis.conf \
-p 6379:6380 \
redis:latest \
redis-server /redis.conf