docker和docker-compose 常规操作
-
就目前来说所有的服务都是单机部署,而且都基于自定义网络,所以如果是初次运行或者docker数据被重新初始化等 lnmp-network 网路不存在时首先应该执行以下网络,建立此docker 网络。
docker network create -d bridge lnmp-network
在未作出集群化部署之前我们的 docker 服务编排文件都部署到目录 /www/docker
在执行任何 docker-compose
命令之前我建议都先进入此目录。
-
启动lnmp服务组:
docker-compose -p web up -d
-
启动dnapp中的消费服务:
docker-compose -p task -f task-docker-compose.yml up -d
-
启动swoole服务:
docker-compose -p swoole -f swoole-docker-compose.yml up -d
-
启动微服务集:
docker-compose -p micro -f micro.compose.yml up -d
-
预检查nginx配置是否正确
docker-compose run --no-deps nginx nginx -t
-
(重点)运行日志查看的正确方式 :
目前而言做日志收集平台的成本和效用不成正比,暂时不予实现。
先看一条完整的命令:
docker-compose -p micro -f micro.compose.yml logs -f -t --tail=20
-
p 参数锁定项目
micro
。 -
f 参数指定项目的编排文件
micro.compose.yml
。 -
logs 命令选项指定要查看该项目下面的运行日志。
-
logs 后面的参数对logs起作用。
-f
表示连续输出最新日志像linux命令tail -f
中的f
一样-t
表示输出日志打印时间。--tail=20
表示从项目中每个容器日志的最后第 20 行开始显示,跟linux 命令tail -n 20
一样。 -
举一反三:
// 查看 nginx 的请求日志(在 docker-compose.yml 文件中定义的服务不需要显示指定项目文件): docker-compose -p web logs -f -t --tail=20 nginx // 查看 php-fpm 运行日志: docker-compose -p web logs -f -t --tail=20 php // 查看消息中心的日志 docker-compose -p micro -f micro.compose.yml logs -f -t --tail=20 message